Quiz
Exam 2
Create a free account to finish this quiz
Save your progress and see your final score.
Already have an account? Sign in
Questions in this quiz (40)
1What are the shared characteristics of different approaches to rapid software development?
- AUser interfaces face heavy scrutiny by human factors engineering teams.
- BSpecification, design, and implementation are independent processes.
- CThe system is developed and delivered as a unified code base.
- DThe system is developed and delivered as a series of versions.
- E"The processes of specification, design, and implementation are inter-leaved."
- FUser interfaces are often developed using an interactive development system that supports rapid UI development.
2What are the two fundamental types of software product?
- ACustomised products designed to meet the specific needs of a single customer.
- BIndustrial products that are designed to meet the needs of only industrial businesses.
- CStandards based products that are designed to meet the needs of ISO registered companies.
- DGeneric products that are designed to meet the needs of many different customers.
- ENetworked products that are designed to meet the needs of collaborative groups.
3What are the 4 sectors in each loop in Boehm's spiral model?
- APrototyping
- BDevelopment and validation
- CPlanning
- DRisk assessment and reduction
- EDevelopment
- FReview
- GDesign
- HObjective setting
4What are the types of abstract system model that are recommended by the MDA method?
- AComputation-independent model
- BUML model
- COne or more platform-specific models
- DPlatform-specific model
- EPlatform-independent model
- FComputation-specific model
- GEngineering-driven model
- HEvent-driven model
- IComputer-generated model
5What are the principal functions of the 4 layers in a generic information system architecture?
- A"User communications, authentication, and authorization"
- BApplication logic
- CWeb browser interface
- DUser interface
- EForms and query manager
- FDatabase and transaction management
- GI/O Processing
- HReport Generator
- IInformation retrieval and modification
6What are the advantage of explicitly designing and documenting a software architecture?
- AIt helps with large-scale reuse
- BIt reduces the cost of the system
- C"It boosts performance, robustness, distributability, and maintainability"
- DIt improves stakeholder communications
- EIt encourages a detailed analysis of the system
- FIt eliminates safety risks
7Which answer/s describe/s the pipe and filter architecture?
- AClients make service requests to the proper server
- BThe system is organized into layers with related functionality associated with each layer
- CA system is decomposed into a set of functional transformations that consume inputs and produce outputs
- DComponents do not interact directly, only through the repository
- EThe functionality of the system is organized into services
- FData flows from one function to another and is transformed as it passes through the sequence
- GAll shared data is held in a central database that can be accessed by all sub-systems
- HA layer provides services to the layer above it
8List the fundamental questions that should be addressed in architectural design?
- AWhat control strategy should be used?
- BWhat architectural style or styles are appropriate?
- CIs there a generic application architecture that can be used?
- DHow will the system be distributed?
- EHow should the system be structured?
9What are the most important advantages of a client-server architecture?
- AIt is easy to add a new server or upgrade existing servers without disrupting the system
- BThis is a distributed architecture so that it is possible to provide services on different computers
- CCan be implemented as either a sequential or concurrent system
- DAllows replacement of entire layers so long as the interface is maintained.
- EChanges made by one component can be propagated to all components
- FRedundant facilities can be provided in each layer to increase the dependability of the system
- GComponents can be independent - they don't need to know about each other
- HWorkflow style matches the structure of many business processes
10What are the fundamental architectural views proposed in Krutchen's 4+1 model?
- AA maintenance view that estimates the ratio of software development versus maintenance
- BA logical view that shows the key abstractions of the system
- CA physical view that shows the distribution of software on the system hardware
- DA connections view that shows how the hardware is going to interact
- EA development view that shows how the system is decomposed for development
- FA code view that shows how algorithms should be written
- GA process view that shows the interacting processes in the system
- HA language view that determines which software languages are appropriate for the system
11What are some fundamental characteristics of a repository architecture?
- AAll shared data is held in a central database that can be accessed by all sub-systems
- BThe functionality of the system is organized into services
- CData processing is organized so that each component is discrete and only performs one type of data transformation
- DClients make service requests to the proper server
- EA layer provides services to the layer above it
- FThe data flows from one component to another for processing
- GThe system is organized into layers with related functionality associated with each layer
- H"Components do not interact directly, only through the repository"
12What do architectural patterns comprise?
- ADescription of strengths and weaknesses
- BHow the pattern should be deployed across multi-core machines
- CCode listings of database transaction statements
- DA stylized abstract description of good practice in architectural design that has been tried and tested in different systems and environments
- EComparisons with other patterns
- FInformation on when it is and is not appropriate to use that architectural design.
- ADescription of strengths and weaknesses
13What are some ways in which an architectural model of a system should be used?
- ATo document the architecture of an existing or an intended system
- BTo ambiguate system requirements
- CTo facilitate discussion about the most appropriate architecture for a system
- DTo avoid writing code
14What are transaction-processing applications?
- AAllows controlled access to a large base of information
- BTranslators of natural or artificial language into another representation
- CThey are organized so that transactions cannot interfere with each other and the integrity of the database is maintained
- DDatabase-centered applications that process user requests for information and update the information in the database
- EUsually web based systems that are accessed through a web browser
15What are some use-case characteristics?
- AIt shows the actors involved with an interaction.
- BIt shows the interactions between system components as well as actors.
- CIt shows how the system reacts to internal and external events.
- DIt identifies a typical interaction with a system.
16What are the principal stages of the requirements engineering process?
- ARequirements validation
- BRequirements review
- CRequirements testing
- DRequirements specification
- ERequirements elicitation and analysis
- FRequirement baselining
17What checks should be applied during requirements validation?
- ACompleteness checks
- BThe verifiability of the requirements should be assessed
- CConsistency checks
- DRealism checks
- EUser competency checks
- FNoise floor checks
- GValidity checks
18Why is it difficult to elicit requirements?
- AStakeholders don't know what they want
- BThe business environment may change during elicitation
- CStakeholders use their own language that requirements engineers may not understand.
- DStakeholder requirements may conflict
- EPolitical factors may influence the system requirements
19What should be included in a scenario?
- AA description of the system state when the scenario finishes
- BA description of the normal flow of events
- CA description of what can go wrong and how to handle it
- DInformation about concurrent activities
- EA description of what's expected when the scenario starts
20Which document officially defines the requirements that should be implemented by system developers?
- ASoftware Specification Document
- BSoftware Requirements Document
- CTechnical Design Document
- DSoftware Design Specification
21What do Gamma et al. suggest are the essential elements of a design pattern?
- AA meaningful name
- BA statement of the consequences of applying the pattern.
- CVocabulary for talking about the design
- DA description of the problem and when the pattern can be applied
- EA well tried solution to a common problem
- FA description of accumulated wisdom and experience
- GObject characteristics such as inheritance and polymorphism
- HA solution description, which shows the components in the solution and their relationships
22Which selections best describe approaches that may be used to identify object classes?
- AUse scenario-based analysis
- BDescribe the dynamic structure of the system and show the interactions between the system objects
- CGrammatical analysis identifying nouns and verbs
- DDescribe the static structure of the system using object classes and their relationships
- EShow logical groupings of objects into coherent subsystems
- FIdentify tangible things in the application domain
23What do you understand by the system context and interaction model?
- AThe interaction model shows logical groupings of objects into coherent subsystems
- BThe system context is a static model of the other systems in the environment of the system being designed
- CThe system context uses a grammatical analysis of a natural language description of the system to be constructed
- DAn interaction model is a dynamic model that describes how the system being designed interacts with its environment
24What are the standard tools in a software development platform?
- AA language debugger
- BGNU Build System
- CmySQL database
- DGraphical editing tools for UML models
- EEmbedded systems
- FUnix Make
- GProject support tools for code control
- HTesting tools that can automatically run program tests
- IAn integrated compiler and syntax-directed editing systems
- AA language debugger
25What are the principal aims of software configuration management?
- AFind out what components have been changed and compile and link components to create a system
- BSystem integration, where support is provided to help developers define what versions of components are used to create each version of a system
- CVersion management, where support is provided to keep track of the different version of software components
- DTo support system integration so that all developers can access the project code and documents in a controlled way
- EProblem tracking, where support is provided to allow users to report bugs and other problems
26Why is it important to specify the interfaces of components that are being developed by a software engineering team?
- AInterface design is not concerned with specifying the detail of the interface to an object or to a group of objects
- BInterfaces have to be specified so that objects and sub-systems can be designed in parallel
- COnce an interface has been specified, the developers of other parts of the system may assume that the interface will be implemented
- DYou should include details of the data representation in an interface design since attributes are not defined in an interface specification
27Which concepts describe the idea of open-source development.
- AThe source code of a software system is made publicly available and volunteers participate in the further development of the system
- BWhen high-quality open source options are available, you can save time and money by using these systems
- CGreat for developing software to a specific set of organizational requirements
- DAny contributor to an open source development may fix bugs and add new features to a system
- EThe Linux operating system
- FMaking a software system open source guarantees community involvement
28What are the 5 key activities in an object-oriented design process?
- AVersion management
- BUnderstand and define the context and use of the system.
- CIdentify the principal objects in the system
- DProvide a standard way of accessing the elements in a collection
- ESpecify object interfaces
- FSystem integration
- GHost-target development
- HDevelop design models
- IDesign the system architecture
- JTidy up the interfaces to a number of related objects
29What are the three types of user testing?
- AAlpha testing, where users work with the development team to test the software as it is being developed
- BAcceptance testing, where customers test a system to check that it is ready for deployment
- CAcceptance testing, where users work with the development team to test the software as it is being developed
- DBeta testing where the software is released to selected users for testing before the formal system release
- EAlpha testing, where the software is released to selected users for testing before the formal system release
- FBeta testing, where customers test a system to check that it is ready for deployment
30What guidelines does Whittaker suggest for defect testing?
- ADesign inputs that might cause buffers to overflow
- BForce invalid outputs to be generated
- CChoose inputs that force all error messages to be generated
- DForce computation results to be too large or too small.
- ERepeat the same input numerous times
- FUse the wrong parameter types in function calls
- GUse metric units where US standard units are required
- HRandomly start and stop the program multiple times
31Interface errors fall into three classes. What are they?
- AInterface misuse: A calling component calls some other component and makes an error in the use of its interface such as the wrong number of parameters.
- BInterface misunderstanding: A calling component makes assumptions about the called component. An unsorted array might be sent when a sorted array is required.
- CTiming errors: Two components may be operating at different speeds. However, old data is better than no data.
- DInterface misuse: A calling component calls some other component and makes an error in the use of its interface such as sending unordered arrays.
- ETiming errors: Two components may be operating at different speeds. Consumers may access out of date information.
- FInterface misunderstanding: A calling component makes assumptions about the called component such as which native data types are in the parameter list.
32Briefly describe the principal stages of testing for a commercial software system.
- ARelease testing: the system is tested to check that it meets its requirements. This is usually held by the original software developers.
- BRelease testing: the system is tested to check that it meets its requirements. This is usually held by a separate team.
- CComponent testing: where individual program units are tested. Component testing should focus on testing the functionality of objects and methods.
- DDevelopment testing: the system is tested to discover bugs and defects. System designers are not likely to be involved.
- EComponent testing: where component interfaces are tested. Several individuals create composite components.
- FUser testing: the system is tested in the user's environment. Unit testing is a type of user testing.
- GUser testing: the system is tested in the user's environment. Acceptance testing is a type of user testing.
- HDevelopment testing: the system is tested to discover bugs and defects. System designers are likely to be involved.
33Software systems require a certain level of confidence. What is this 'level' based on?
- AUser Expectations
- BAutomated Testing
- CSoftware Purpose
- DSoftware Inspections and Reviews
- EMarketing Environment
- FDevelopment Testing
34What is emergent behavior?
- ABehaviors exhibited by emergents
- BElements of system functionality that become obvious when you put the components together.
- CUntested functionality that users' discover after release
- DBehaviors synonomous with emergency broadcasts
35What are the advantages of inspections over testing?
- AInspections can consider broader quality attributes as well as program defects.
- BTesting can only show the presence of errors, not their absence
- CIncomplete versions of a system can be tested
- DInspections can discover many errors.
- EIn testing, one error may mask another.
36What are the different types of component interfaces?
- AShared memory interfaces
- BProcedural interfaces
- CPhysical interfaces
- DGUI interfaces
- ESoftware design interfaces
- FMessage passing interfaces
- GPublic and private interfaces
- HParameter interfaces
37What tests should be included in object class testing?
- ATests that set and access all object attributes
- BTests for all operations in isolation
- CTests that simulate all events that cause a state change
- DTests that force the object into all possible states
38What process metrics might be used to assess maintainability?
- ANumber of outstanding change requests
- BAverage time required for impact analysis
- CNumber of requests for corrective maintenance
- DAverage time taken to implement a change request
39Why is it usually more expensive to add functionality after a system is in operation?
- ASenior staff engineers are usually placed on maintenance teams.
- BThe maintenance contract is usually separate from the development contract. So why should a development team write maintainable software?
- CDevelopment is seen as a less-skilled process. Therefore maintenance engineers are paid more.
- DOlder systems used more stringent software engineering principles and were optimized for efficiency rather than understandability.
- EAs changes are made to programs, the structure tends to degrade which makes them harder to understand.
- FTeams are usually broken up after a system is complete.
- GMaintenance staff are usually less experienced with the application domain.
- HThe maintenance phase is so much longer than the original development phase.
40What occurs during the evolution phase of a software product?
- AThe software may still be used but no further changes are implemented.
- BIts structure tends to degrade and changes become more and more expensive.
- COnly changes that are relatively small and essential.
- DSignificant changes to the software architecture and functionality may be made.
- EOnly small tactical changes are made to it.
- FA transition point where significant changes and implementing new requirements becomes less and less cost effective.
Information
- Description
- Quiz on Exam 2, created by zero.nul on 06/11/2014.
- Author
- zero.nul
- Language
- English
- Views
- 218
- History
- Created on 6 Nov 2014 · updated on 7 Mar 2018
- Rating
- No ratings yet Rate this quiz