Tuesday, November 22, 2011

What are the stages in the requirements change management process?

What are the stages in the requirements change management process?
Ans: (a) Problem analysis and change specification
(b) Change analysis and costing
(c) Change implementation

What is requirements management?

What is requirements management?
Ans: Requirements management is the process of understanding and controlling changes to system requirements. You should start planning of how to manage changing requirements during the requirements elicitation process. 

What is ethnography and how is it used in requirements elicitation?

What is ethnography and how is it used in requirements elicitation?
Ans: Ethnography is an observational technique that can be used to understand social and organizational requirements. It helps analysts discover implicit system requirements that reflect the actual rather than the formal processes in which people are involved.

What is a use-case?

What is a use-case?
Ans: Use cases are a scenario-based technique for requirements elcitation, identifying the type of interaction and the actors involved. Use cases have now became the fundamental feature of the UML notation for describing object-oriented system models. 

What should be included in a scenario?

What should be included in a scenario?
Ans: (a) A description of what the system and users expect when the scenario starts.
(b) A description of the normal flow of events in the scenario.
(c) A description of what can go wrong and how this is handled.
(d) Information about other activities that might be going on at the same time.
(e) A description of the system state when scenario finishes. 

Give 5 reasons why eliciting requirements is difficult?

Give 5 reasons why eliciting requirements is difficult?
Ans: (a) Stakeholders often do not know exactly what kind of system/services they want.
(b) Stakeholders naturally express requirements in their own terms and therefore, requirement engineers should be able to understand these requirements.
(c) Different stakeholders have different requirements. Requirement engineers have to consider all potential sources of requirements and discover commonalities and conflicts.
(d) Political factors may affect the requirements of the system.eg: managers may demand specific system requirements.
(e) The economic and business environment is very dynamic where analysis takes place, therefore, new requirements may be required in the future.

What are the main advantages of using a standard format to specify requirements?

What are the main advantages of using a standard format to specify requirements?
Ans: Especially for large system engineering projects, it is very essential to define the requirements to a fine level of detail. Standard format to specify requirements is also helpful for people who do not have technical knowledge to understand the behavior of a particular system. 

What is the distinction between the terms ‘shallʼ and ʻshouldʼ in a user requirements document, which is written in natural language?

What is the distinction between the terms ‘shallʼ and ʻshouldʼ in a user requirements document, which is written in natural language?
Ans: Mandatory requirements are requirements that the system must support and are usually written using 'shall'. Desirable requirements are not essential and are written using 'should'.

What is the software requirements document?

What is the software requirements document?
Ans: Software requirements document also called software requirements specification (SRS) is the official statement of what the system developers should implement. It includes both the user requirements and system requirements in detail. Depending on the size of the system, user and system requirements may be integrated into a single document or the detailed system requirements may be presented in a separate document.

What is the distinction between functional and non-functional requirements?

What is the distinction between functional and non-functional requirements?
Ans: Functional requirements: These are the statements of the services the system should provide, how the system is going to react to particular inputs and how the system should behave in particular situations.
Non-functional requirements: These are constraints on the services or functions offerred by the system, which include timing constraints, constraints on the development process and standards. These often apply to the system as a whole. 

What are user requirements and system requirements?

What are user requirements and system requirements?
Ans: User requirements: These are statements in natural language with few diagrams explaining the services expected to be provided by the system and constraints under which the system must operate. 
System requirements: System requirements explain the systems’ functions, services and operational constraints in detail, and the document should be precise. It may be a part of the contract between the system buyer and the software developers.

Monday, November 21, 2011

What are the barriers to introducing agile methods into large companies?

What are the barriers to introducing agile methods into large companies?
Ans: Large companies need to decide the specifications of the system prior to the system design. Any later change in system specification requires a new contract to be signed between company and contractor which is often painful affort for large companies. Therefore, large companies do not really prefer incremental delivery approach of agile development.

What is a Scrum sprint?

What is a Scrum sprint?
Ans: In software product development, a scrum sprint is a set period of time during which specific work has to be completed and made ready for review. Each sprint begins with a planning meeting. During the meeting, the customer(client) and the development team agree upon exactly what work will be accomplished during the sprint.

List 4 questions that should be asked when deciding whether or not to adopt an agile method of software development.

List 4 questions that should be asked when deciding whether or not to adopt an agile method of software development.
Ans: (a) Can customer representatives take full time part in the software develpoment?
         (b) Do customer representatives have suitable personalities for the intense involvement needed?
         (c) How many stakeholders are there for particular system and what are their priorities?
         (d) Are delivery schedules flexible enough to maintain simplicity? 

For what types of system are agile approaches to development particularly likely to be successful?

For what types of system are agile approaches to development particularly likely to be successful?
Ans: Agile approaches are best suited to the development of small or medium sized business systems and personal computer products.

What are the shared characteristics of different approaches to rapid software development?

What are the shared characteristics of different approaches to rapid
software development?

Ans:  (a) The processes of specification, design and implementation are concurrent.
         (b) The system is developed in a series of increments.
         (c) System user interfaces are often developed using an interactive development system.