Software Quality and Prototyping
32 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What is the primary focus of software quality assurance?

  • Validating user interface designs
  • Reducing the amount of code written
  • Assessing software processes for adequacy (correct)
  • Enhancing programming language features

What does technical debt refer to?

  • Investment in training new developers
  • The long-term costs of maintaining poor quality software (correct)
  • Funds allocated for software upgrades and patches
  • Immediate costs associated with software certification

What is the primary purpose of software inspection?

  • To develop new coding standards
  • To create user interface designs
  • To conduct usability testing on software products
  • To detect and correct defects in software artifacts (correct)

Why might software require certification?

<p>To ensure compliance with quality control measures (A)</p> Signup and view all the answers

Which role in the Fagan inspection methodology actively answers questions regarding the software artifacts?

<p>Author (C)</p> Signup and view all the answers

What distinguishes structured walkthroughs from other peer reviews?

<p>The author guides reviewers through the deliverable (B)</p> Signup and view all the answers

Which statement best describes software prototyping?

<p>It clarifies software functionalities without exact logic replication. (B)</p> Signup and view all the answers

What is a main consequence of software bugs?

<p>They can result in immediate negative impacts for users. (D)</p> Signup and view all the answers

What is a primary characteristic of tool-driven code reviews?

<p>They utilize automated code analysis techniques (A)</p> Signup and view all the answers

Which of the following best describes wireframing?

<p>It is a visual representation for arranging user interfaces. (C)</p> Signup and view all the answers

Which of the following is a potential legal concern regarding software?

<p>Proving the software does not pose a risk to users (A)</p> Signup and view all the answers

In the context of developer-driven code review, what is a challenge associated with assessing code quality?

<p>Difficulty in evaluating certain quality properties automatically (D)</p> Signup and view all the answers

What is a reason organizations might follow ethical codes of practice in software development?

<p>To address moral obligations when no formal certification exists (D)</p> Signup and view all the answers

How does software quality relate to organizational reputation?

<p>High-quality software can enhance organizational trust. (D)</p> Signup and view all the answers

What is a major goal of the Fagan inspection methodology?

<p>To identify and remove errors in software products (B)</p> Signup and view all the answers

What is a characteristic of modern code review?

<p>It operates primarily on tools and development processes. (A)</p> Signup and view all the answers

What does the term 'software artifacts' refer to?

<p>Any documented and stored items during the development process (A)</p> Signup and view all the answers

Which of the following correctly describes 'Pull-Based Development'?

<p>It revolves around a mechanism known as a 'pull request'. (C)</p> Signup and view all the answers

What does 'Knowledge Representation' refer to in the context of enterprise architecture?

<p>The specific way an architecture model is depicted. (D)</p> Signup and view all the answers

What is involved in the 'Knowledge Transformation' process?

<p>Passing knowledge through modeling while considering goals. (B)</p> Signup and view all the answers

Which of the following is crucial for 'Establishing the purpose, scope, and focus' in modeling activities?

<p>Determining stakeholders and their purposes. (A)</p> Signup and view all the answers

Which activity involves gathering appropriate information to create the model?

<p>Creating and structuring the model (B)</p> Signup and view all the answers

What is indicated by 'Visualizing the model' in enterprise architecture?

<p>Considering stakeholders' needs in the model representation. (A)</p> Signup and view all the answers

What does the validation activity entail in the context of modeling?

<p>Confirming stakeholder agreement on model viewpoints. (A)</p> Signup and view all the answers

What is the primary purpose of obtaining commitment from stakeholders after reaching an agreement?

<p>To confirm stakeholders fully understand the potential impacts of the model. (B)</p> Signup and view all the answers

Which of the following actions involves eliminating a concept or relation from a model?

<p>Abandoning (A)</p> Signup and view all the answers

Abstraction in modeling actions is best described as:

<p>Deciding which information to leave out from the model. (D)</p> Signup and view all the answers

In Gestalt theory, which principle states that people perceive objects that are nearby as related?

<p>Proximity (B)</p> Signup and view all the answers

Which Gestalt principle explains the tendency to perceive a line as continuous?

<p>Continuity (A)</p> Signup and view all the answers

What does the term 'documentation' refer to in the context of modeling actions?

<p>The administration and recording of all modeling actions. (C)</p> Signup and view all the answers

What is an essential requirement for maintaining the value of an enterprise architecture model?

<p>Keeping the model up to date. (A)</p> Signup and view all the answers

Which of the following is a consequence of applying the closure principle in model perception?

<p>Incomplete or asymmetric objects are perceived as complete. (B)</p> Signup and view all the answers

Flashcards

Software Quality

The degree to which a software product meets its requirements.

Software Quality Assurance

Activities that check if software processes are good enough to create quality software.

Reputation

The public image a software developer and organization has.

Software Bugs

Errors in software that hurt clients.

Signup and view all the flashcards

Technical Debt

The money and time cost of fixing poorly made software!

Signup and view all the flashcards

Software Certification

Official approval or recognition of software to function correctly.

Signup and view all the flashcards

Legal Obligations

Rules that software must follow and meet in usage.

Signup and view all the flashcards

Ethical Codes of Practice

Moral standards for software development when no laws exist.

Signup and view all the flashcards

Software Prototyping

Building a model of software to show how it works, but not entirely.

Signup and view all the flashcards

Software Prototyping Functionality

Prototypes showcasing the software's capabilities, but possibly not its exact logic.

Signup and view all the flashcards

Evaluation of Software System Design

Assessing how a software system is planned and organized to work.

Signup and view all the flashcards

Cost and Time Reduction from Prototyping

Prototyping reduces the total time and money of making a software by showing what works early.

Signup and view all the flashcards

Paper-Based Prototyping

A prototyping technique using hand-drawn representations of software user interfaces.

Signup and view all the flashcards

Wireframing

A visual layout of product pages, used by developers to arrange software interfaces.

Signup and view all the flashcards

Software Inspection

A formal review process for finding and fixing bugs in software artifacts.

Signup and view all the flashcards

Software Artifacts

Documented items created during software development (e.g., code, docs, plans).

Signup and view all the flashcards

Fagan Inspection Methodology

A structured review method to find and fix software errors and process flaws.

Signup and view all the flashcards

Moderator (Inspection)

Leader of the inspection team, handling logistics and procedures.

Signup and view all the flashcards

Author (Inspection)

Creator of the inspected software artifacts; answers questions during review.

Signup and view all the flashcards

Reader (Inspection)

Experienced peer who acts as subject-matter expert on the artifacts.

Signup and view all the flashcards

Tester (Inspection)

Focuses on testing aspects of a software module or product review process.

Signup and view all the flashcards

Structured Walkthrough

A peer review where the deliverable author guides reviewers through the product.

Signup and view all the flashcards

Code Review

A systematic review of code by other programmers to find issues and ensure quality.

Signup and view all the flashcards

Tool-Driven Code Review

Using automated tools to analyze code and detect problematic patterns.

Signup and view all the flashcards

Developer-Driven Code Review

Developers review code to address quality issues that tools may miss.

Signup and view all the flashcards

Modern Code Review

A lightweight code inspection method that doesn't require in-person meetings, using tools and development processes.

Signup and view all the flashcards

Pull-Based Development

A development approach that enforces modern code reviews, but avoids review tools, relying on a 'pull request' mechanism.

Signup and view all the flashcards

Pull Request

A mechanism in pull-based development where code changes are submitted for review before merging.

Signup and view all the flashcards

Knowledge Representation

A specific depiction of an enterprise architecture model based on stakeholder agreement.

Signup and view all the flashcards

Knowledge Goals

The objectives in the enterprise architecture modeling process.

Signup and view all the flashcards

Knowledge State

The stakeholder condition and commitment to the enterprise architecture.

Signup and view all the flashcards

Knowledge Transformation

The process of knowledge change through enterprise architecture modeling, guided by objectives and guidelines.

Signup and view all the flashcards

Central Representations

The main models used in the knowledge transformation of enterprise architecture.

Signup and view all the flashcards

Purpose, Scope, and Focus (Establishing)

The initial activity to identify stakeholders and the model's intended uses.

Signup and view all the flashcards

Viewpoints (Selecting)

Using different perspectives to develop concepts and connections crucial to the model.

Signup and view all the flashcards

Model Creation/Structuring

Gathering and using requirements to develop and visualize an architecture model.

Signup and view all the flashcards

Visualizing the model

Representing the enterprise architecture model in a way that stakeholders can understand.

Signup and view all the flashcards

Using the model

Employing the model to communicate with stakeholders and assess its effectiveness.

Signup and view all the flashcards

Validation

Ensuring key stakeholders agree on the correctness and consistency of the model with the situation.

Signup and view all the flashcards

Obtaining Commitment

Stakeholders confirm understanding of model impacts.

Signup and view all the flashcards

Informing

Sharing information with stakeholders.

Signup and view all the flashcards

Maintaining the model

Keeping the model current.

Signup and view all the flashcards

Introduction (modeling)

Adding new element to a model.

Signup and view all the flashcards

Refinement (modeling)

Adding details to an element in a model.

Signup and view all the flashcards

Abandoning (modeling)

Removing an element from a model.

Signup and view all the flashcards

Abstraction (modeling)

Simplifying a model.

Signup and view all the flashcards

Translation (modeling)

Replacing a model element with a suitable alternative.

Signup and view all the flashcards

Documentation (modeling)

Recording modeling activities.

Signup and view all the flashcards

Proximity (Gestalt)

Grouping close objects together.

Signup and view all the flashcards

Similarity (Gestalt)

Grouping similar objects together.

Signup and view all the flashcards

Continuity (Gestalt)

Perceiving lines as continuous.

Signup and view all the flashcards

Closure (Gestalt)

Completing incomplete objects.

Signup and view all the flashcards

Study Notes

Identification

  • Software quality is the degree to which a software product meets the requirements.
  • Software quality assurance defines and assesses the adequacy of software processes to ensure confidence in producing suitable quality software.
  • Software developers and organisations rely on their reputation. Software bugs can have immediate impacts on clients and customers.
  • Poor quality software is expensive to develop and maintain (technical debt).
  • Software certification may be required, often requiring evidence of quality control and assessment measures.
  • Legal obligations may apply to organisations using the software.
  • Ethical codes of practice may apply if software isn't covered by certification or legislation (and isn't safety-critical).
  • Software prototyping builds prototypes to display functionality, but may not use the original software's logic.

Software Prototyping

  • Allow users to evaluate the software system design and how the software actually works.
  • Clarify the functionalities of the software to both users and developers.
  • Reduce costs and time compared to building and repeatedly modifying a software product.
  • Reduce the need for recreating the software system due to gaps in implementation.
  • Throwaway Prototyping: A fast method where prototypes are created and discarded after testing.
  • Evolutionary Prototyping: Prototypes are reused and refined following testing.
  • Fidelity Prototypes: Vary in level of detail (low-fidelity to high-fidelity) showing the visual appearance and user flows (low-fidelity) and actual usage by real users (high-fidelity)
  • Paper-Based Prototyping: Used for creating user interface prototypes using hand drawings.
  • Wireframing: Visual representation of a product page to arrange user interfaces for software.

Software Inspection/Review

  • Software artifacts include requirements, source code, user documentation and test plans.
  • Fagan inspection methodology aims to identify and remove errors in software products and identify systematic defects in processes.
  • Roles include: Moderator (leads inspection team), Author (responsible for the artefact), Reader (subject matter expert) and Tester (runs test cases).
  • Structured walkthrough: A peer review involving the developer bringing reviewers through a deliverable.
  • Code reviewing compares code with fellow programmers to identify faults and ensure quality.
  • Tool-driven code review uses automated tools to identify problems in source code.
  • Developer-driven code review assesses code quality manually.
  • Modern code review uses less formal methods than inspections, deploying tools for streamlined development processes.
  • Pull-based development is a modern approach where code review happens in an integrated code platform using "pull requests."

Enterprise Architecture Modeling

  • Knowledge Representation: Shows how an enterprise architecture model is depicted and perceived by individuals.
  • Knowledge Goals: Goals used in the modeling process.
  • Knowledge State: Condition and commitment of stakeholders regarding enterprise architecture.
  • Knowledge Transformation: Process of knowledge being transformed following the implementation of the enterprise architecture model.
  • Central Representations: Primary and essential models used when changing knowledge.
  • Modeling Activities:
    • Establish purpose, scope and focus for the model.
    • Select one or more viewpoints for the model.
    • Create and structure the model to meet enterprise documentation needs.
    • Visualize the model while considering stakeholders and their needs.
    • Use the model for communication and evaluation of model effectiveness against intended goals.
    • Validate the model to ensure agreement among key stakeholders.
    • Gain commitment of stakeholders concerning the implications of the model implementation.
    • Disseminate pertinent information about the model.
    • Maintain model up-to-date.

Modelling Actions

  • Introduce a candidate element
  • Refine an element
  • Abandon a model element
  • Abstract a concept or relationship

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

App Dev Enterprise Day 1 PDF

Description

This quiz explores key concepts in software quality assurance, including the importance of software quality, the impact of software bugs, and the role of software certification. It also discusses the significance of software prototyping in evaluating design and functionality. Test your knowledge about these crucial aspects of software development!

More Like This

Use Quizgecko on...
Browser
Browser