Podcast
Questions and Answers
What is the primary focus of software quality assurance?
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?
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?
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?
Why might software require certification?
Which role in the Fagan inspection methodology actively answers questions regarding the software artifacts?
Which role in the Fagan inspection methodology actively answers questions regarding the software artifacts?
What distinguishes structured walkthroughs from other peer reviews?
What distinguishes structured walkthroughs from other peer reviews?
Which statement best describes software prototyping?
Which statement best describes software prototyping?
What is a main consequence of software bugs?
What is a main consequence of software bugs?
What is a primary characteristic of tool-driven code reviews?
What is a primary characteristic of tool-driven code reviews?
Which of the following best describes wireframing?
Which of the following best describes wireframing?
Which of the following is a potential legal concern regarding software?
Which of the following is a potential legal concern regarding software?
In the context of developer-driven code review, what is a challenge associated with assessing code quality?
In the context of developer-driven code review, what is a challenge associated with assessing code quality?
What is a reason organizations might follow ethical codes of practice in software development?
What is a reason organizations might follow ethical codes of practice in software development?
How does software quality relate to organizational reputation?
How does software quality relate to organizational reputation?
What is a major goal of the Fagan inspection methodology?
What is a major goal of the Fagan inspection methodology?
What is a characteristic of modern code review?
What is a characteristic of modern code review?
What does the term 'software artifacts' refer to?
What does the term 'software artifacts' refer to?
Which of the following correctly describes 'Pull-Based Development'?
Which of the following correctly describes 'Pull-Based Development'?
What does 'Knowledge Representation' refer to in the context of enterprise architecture?
What does 'Knowledge Representation' refer to in the context of enterprise architecture?
What is involved in the 'Knowledge Transformation' process?
What is involved in the 'Knowledge Transformation' process?
Which of the following is crucial for 'Establishing the purpose, scope, and focus' in modeling activities?
Which of the following is crucial for 'Establishing the purpose, scope, and focus' in modeling activities?
Which activity involves gathering appropriate information to create the model?
Which activity involves gathering appropriate information to create the model?
What is indicated by 'Visualizing the model' in enterprise architecture?
What is indicated by 'Visualizing the model' in enterprise architecture?
What does the validation activity entail in the context of modeling?
What does the validation activity entail in the context of modeling?
What is the primary purpose of obtaining commitment from stakeholders after reaching an agreement?
What is the primary purpose of obtaining commitment from stakeholders after reaching an agreement?
Which of the following actions involves eliminating a concept or relation from a model?
Which of the following actions involves eliminating a concept or relation from a model?
Abstraction in modeling actions is best described as:
Abstraction in modeling actions is best described as:
In Gestalt theory, which principle states that people perceive objects that are nearby as related?
In Gestalt theory, which principle states that people perceive objects that are nearby as related?
Which Gestalt principle explains the tendency to perceive a line as continuous?
Which Gestalt principle explains the tendency to perceive a line as continuous?
What does the term 'documentation' refer to in the context of modeling actions?
What does the term 'documentation' refer to in the context of modeling actions?
What is an essential requirement for maintaining the value of an enterprise architecture model?
What is an essential requirement for maintaining the value of an enterprise architecture model?
Which of the following is a consequence of applying the closure principle in model perception?
Which of the following is a consequence of applying the closure principle in model perception?
Flashcards
Software Quality
Software Quality
The degree to which a software product meets its requirements.
Software Quality Assurance
Software Quality Assurance
Activities that check if software processes are good enough to create quality software.
Reputation
Reputation
The public image a software developer and organization has.
Software Bugs
Software Bugs
Errors in software that hurt clients.
Signup and view all the flashcards
Technical Debt
Technical Debt
The money and time cost of fixing poorly made software!
Signup and view all the flashcards
Software Certification
Software Certification
Official approval or recognition of software to function correctly.
Signup and view all the flashcards
Legal Obligations
Legal Obligations
Rules that software must follow and meet in usage.
Signup and view all the flashcards
Ethical Codes of Practice
Ethical Codes of Practice
Moral standards for software development when no laws exist.
Signup and view all the flashcards
Software Prototyping
Software Prototyping
Building a model of software to show how it works, but not entirely.
Signup and view all the flashcards
Software Prototyping Functionality
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
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
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
Paper-Based Prototyping
A prototyping technique using hand-drawn representations of software user interfaces.
Signup and view all the flashcards
Wireframing
Wireframing
A visual layout of product pages, used by developers to arrange software interfaces.
Signup and view all the flashcards
Software Inspection
Software Inspection
A formal review process for finding and fixing bugs in software artifacts.
Signup and view all the flashcards
Software Artifacts
Software Artifacts
Documented items created during software development (e.g., code, docs, plans).
Signup and view all the flashcards
Fagan Inspection Methodology
Fagan Inspection Methodology
A structured review method to find and fix software errors and process flaws.
Signup and view all the flashcards
Moderator (Inspection)
Moderator (Inspection)
Leader of the inspection team, handling logistics and procedures.
Signup and view all the flashcards
Author (Inspection)
Author (Inspection)
Creator of the inspected software artifacts; answers questions during review.
Signup and view all the flashcards
Reader (Inspection)
Reader (Inspection)
Experienced peer who acts as subject-matter expert on the artifacts.
Signup and view all the flashcards
Tester (Inspection)
Tester (Inspection)
Focuses on testing aspects of a software module or product review process.
Signup and view all the flashcards
Structured Walkthrough
Structured Walkthrough
A peer review where the deliverable author guides reviewers through the product.
Signup and view all the flashcards
Code Review
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
Tool-Driven Code Review
Using automated tools to analyze code and detect problematic patterns.
Signup and view all the flashcards
Developer-Driven Code Review
Developer-Driven Code Review
Developers review code to address quality issues that tools may miss.
Signup and view all the flashcards
Modern Code Review
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
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
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
Knowledge Representation
A specific depiction of an enterprise architecture model based on stakeholder agreement.
Signup and view all the flashcards
Knowledge Goals
Knowledge Goals
The objectives in the enterprise architecture modeling process.
Signup and view all the flashcards
Knowledge State
Knowledge State
The stakeholder condition and commitment to the enterprise architecture.
Signup and view all the flashcards
Knowledge Transformation
Knowledge Transformation
The process of knowledge change through enterprise architecture modeling, guided by objectives and guidelines.
Signup and view all the flashcards
Central Representations
Central Representations
The main models used in the knowledge transformation of enterprise architecture.
Signup and view all the flashcards
Purpose, Scope, and Focus (Establishing)
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)
Viewpoints (Selecting)
Using different perspectives to develop concepts and connections crucial to the model.
Signup and view all the flashcards
Model Creation/Structuring
Model Creation/Structuring
Gathering and using requirements to develop and visualize an architecture model.
Signup and view all the flashcards
Visualizing the model
Visualizing the model
Representing the enterprise architecture model in a way that stakeholders can understand.
Signup and view all the flashcards
Using the model
Using the model
Employing the model to communicate with stakeholders and assess its effectiveness.
Signup and view all the flashcards
Validation
Validation
Ensuring key stakeholders agree on the correctness and consistency of the model with the situation.
Signup and view all the flashcards
Obtaining Commitment
Obtaining Commitment
Stakeholders confirm understanding of model impacts.
Signup and view all the flashcards
Informing
Informing
Sharing information with stakeholders.
Signup and view all the flashcards
Maintaining the model
Maintaining the model
Keeping the model current.
Signup and view all the flashcards
Introduction (modeling)
Introduction (modeling)
Adding new element to a model.
Signup and view all the flashcards
Refinement (modeling)
Refinement (modeling)
Adding details to an element in a model.
Signup and view all the flashcards
Abandoning (modeling)
Abandoning (modeling)
Removing an element from a model.
Signup and view all the flashcards
Abstraction (modeling)
Abstraction (modeling)
Simplifying a model.
Signup and view all the flashcards
Translation (modeling)
Translation (modeling)
Replacing a model element with a suitable alternative.
Signup and view all the flashcards
Documentation (modeling)
Documentation (modeling)
Recording modeling activities.
Signup and view all the flashcards
Proximity (Gestalt)
Proximity (Gestalt)
Grouping close objects together.
Signup and view all the flashcards
Similarity (Gestalt)
Similarity (Gestalt)
Grouping similar objects together.
Signup and view all the flashcards
Continuity (Gestalt)
Continuity (Gestalt)
Perceiving lines as continuous.
Signup and view all the flashcards
Closure (Gestalt)
Closure (Gestalt)
Completing incomplete objects.
Signup and view all the flashcardsStudy 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.