1/37
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
What are the essential elements of good software?
Acceptability, Dependability and security, Efficiency, Maintainability
What are the four general issues that affect many different types of software?
Heterogeneity, Business and social change, Security and trust, Scale software
What is a software engineering code of ethics
A set of rules that serve as a moral guide for software engineers.
What are the identified levels in the SEI's Capability Maturity Model?
Initial, managed, defined, quantitatively managed, optimizing
What are the development stages in integration and configuration?
Requirements specification, software discovery and evaluation, requirements refinement, application system configuration, component adaptation and integration
List three generic process models that are used in software engineering.
1. Waterfall model
2. Incremental development
3. Integration and configuration
Why has the Scrum agile method been widely adopted in preference to methods such as XP
It focuses on providing a framework for agile project organization, and it does not mandate the use of specific development practices.
List the five principles of agile methods.
Customer involvement, Embrace change, Incremental delivery, Maintain simplicity, People not process
List four questions that should be asked when deciding whether or not to adopt an agile method of software development.
How large is the system that is being developed?
What type of system is being developed?
What is the expected system lifetime?
Is the system subject to external regulation?
How do managers and system test engineers use a system requirements document?
Managers use the requirements document to plan a bid for the system and to plan the system development process. System test engineers use the requirements to develop validation tests for the system.
What is the distinctions between functional and non-functional requirements?
Functional requirements are statements of services that the system should provide, how the system should react to particular inputs, and how the system should behave in particular situations. Non-functional requirements are constraints on the services or functions offered by the system.
Reasons software requirement elicitation is difficult
Stakeholders often do not know what they want from a computer system.
Stakeholders in a system naturally express requirements in their own terms.
Different stakeholders may express their requirements in different ways.
Political factors may influence the requirements of a system.
The economic and business environment in which the analysis takes place is dynamic.
What UML diagram types do you need to represent the essential features of a system?
Activity diagrams
Use case diagrams
Sequence diagrams
Class diagrams
State diagrams
What is illustrated in a UML sequence diagram?
A UML sequence diagram illustrates the sequence of interactions that take place during a use case.
What are the two ways in which an architectural model of a system may be used?
As a way of encouraging discussions about the system design.
As a way of documenting an architecture that has been designed.
What is the most important advantage of a client-server architecture?
Servers can be distributed across a network and general functionality can be available to all clients and does not need to be implemented by all services.
What are transaction processing applications?
Transaction processing applications are systems that are designed to process user information from a database, or process requests to update a database.
What are essential tools in a software development platform?
An integrated complier and syntax-directed editing system
A language debugging system
Graphical editing tools
Testing tools
Tools to support refactoring and program visualization
Configuration management tools
Why is it important to specify the interfaces of components that are being developed by a software engineering team?
So that objects and subsystems can be designed in parallel.
How do design patterns contribute to reuse?
Patterns provide ways to describe best practices, good designs, and capture experience in a way that it is possible for others to reuse this experience.
What is the distinction between validation and verification?
Validation: Are we building the right product?
Verification: Are we building the product right?
Briefly summarize the test-driven development process?
Test-driven development is an approach to program development in which you interleave testing and code development. The code is developed incrementally, along with a set of tests for that increment.
What are the stages in the system evolution process and what triggers that process?
Impact analysis, release planning, change implementation, and system release. This process is triggered by change requests.
What tests should be included in object class testing?
Object tests should test all operations associated with the object, set and check the value of all attributes associated with the object, and put the object into all possible states.
What are the strategic options for legacy system evolution?
Scrap the system completely
Leave the system unchnage and continue with regular maintenance
Reengineer the system to improve its maintainability
Replace all or part of the system with a new system
What factors should be assessed to understand the relationship between a system and is environment?
The number and complexity of system interfaces
The number of inherently volatile system requirements
The business processes in which the system is used
What is meant by a regulated system? Give two examples of systems that are regulated.
Regulated systems are systems that are required to operate under specific laws or rules.
A system that is responsible for controlling the autopilot on an airplane
The system that computes the doses of medication that are given to patients at a hospital.
List two system properties that are sometimes considered to be dependability properties, but which are not normally thought of as principal dependability properties.
Repairability
Error tolerance
What are the four stages of reliability testing?
Start by studying existing systems of the same type.
Construct a set of test data that reflect the operational profile.
Test the system using these data and count the number and type of failures.
Compute the software reliability and work out the appropriate reliability metric value.
List four activities that might be included as part of a dependable software engineering process.
Requirements reviews
Formal specification
System modeling
Static analysis
What is a protection system?
A protection system is a specialized system that is designed to protect another system from failure.
Give examples of three policies that may be introduced with the aim of achieving software diversity.
Including requirements that different design methods should be used.
Requiring the use of different tools during development.
Requiring different algorithms to be used in different parts of the system.
What is the difference between a hazard and an accident?
A hazard is a system state that could result in an accident. An accident is what occurs when the potential consequence of a hazard is realized.
Why do the use of formal specification and program verification not guarantee that a system is safe?
The specification my not reflect the real requirements of users.
The proof may contain errors.
The proof may make incorrect assumptions about the system.
What is a safety case?
A safety case is a set of documents that includes description of the system to be certified, information about the processes used to develop the system, and logical arguments that demonstrate that the system is likely to be safe.
Application security vs. Infrastructure security
Application security relates to the security of individual applications or groups of similar applications, while infrastructure security relates to the security of an organization's entire network and all of its systems.
What are the essential elements of an organizational security policy?
The assets that must be protected.
The level of protection that is required for the different types of assets.
The responsibilities of individual users, managers, and the organization.
Existing security procedures and technologies that should be maintained.
Suggest two possible vulnerabilities when login/password authentication is used.
A user's password could be simple and easy to guess.
The users' credentials are stored as unencrypted data.