software requirements by jane cleland-huang presentation by donovan faustino

20
Software Software Requirements Requirements By Jane Cleland-Huang By Jane Cleland-Huang Presentation by Donovan Presentation by Donovan Faustino Faustino

Upload: amber-floyd

Post on 18-Dec-2015

216 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

Software Software RequirementsRequirements

By Jane Cleland-HuangBy Jane Cleland-Huang

Presentation by Donovan Presentation by Donovan FaustinoFaustino

Page 2: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

IntroductionIntroduction

Requirements Engineering - process Requirements Engineering - process of eliciting, analyzing, validating, of eliciting, analyzing, validating, and managing requirements and managing requirements

IEEE standards such as IEEE Std IEEE standards such as IEEE Std 830-1998 provide guidelines for 830-1998 provide guidelines for recommended practices recommended practices

Page 3: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

RequirementsRequirements Defining RequirementsDefining Requirements – – property of the system or a constraint placed property of the system or a constraint placed

either upon the product itself or upon the either upon the product itself or upon the process by which the system is created. process by which the system is created. Formally IEE Std 610.12.1990 – 1) A condition Formally IEE Std 610.12.1990 – 1) A condition or capability needed by a user to solve a or capability needed by a user to solve a problem or achieve an objectiveproblem or achieve an objective

2) A condition or capability that must be met 2) A condition or capability that must be met or possessed by a system or system component or possessed by a system or system component to satisfy a contract, standard, specification, or to satisfy a contract, standard, specification, or other formally imposed documents. other formally imposed documents.

3) A documented representation of a condition 3) A documented representation of a condition or capability as in (1) or (2). or capability as in (1) or (2).

Page 4: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

Phases of RequirementsPhases of Requirements

ElicitationElicitation AnalysisAnalysis SpecificationSpecification ManagementManagement ValidationValidation

Page 5: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

ElicitationElicitation

proactively working with proactively working with stakeholders to discover their needs, stakeholders to discover their needs, identify and negotiate potential identify and negotiate potential conflicts, and establish a clear scope conflicts, and establish a clear scope and boundaries for the project and boundaries for the project

Page 6: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

Elicitation(cont)Elicitation(cont)

Understanding the Problem and Its DomainUnderstanding the Problem and Its Domain

Making the business caseMaking the business caseo current trends have organizations are no longer willing current trends have organizations are no longer willing

to invest in IT projects unless those projects return clear to invest in IT projects unless those projects return clear value to the businessvalue to the business

From a requirements perspective, these include a lack From a requirements perspective, these include a lack of clear purpose for the product, insufficient stakeholder of clear purpose for the product, insufficient stakeholder involvement, lack of agreement between stakeholders, involvement, lack of agreement between stakeholders, rapidly changing the requirements, goldplating(adding rapidly changing the requirements, goldplating(adding additional and unnecessary features), poor change additional and unnecessary features), poor change management, and lack of analysis of the requirements management, and lack of analysis of the requirements

Page 7: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

Elicitation(cont)Elicitation(cont)

Elicitation techniquesElicitation techniques Collaborative sessionsCollaborative sessions Interviewing techniquesInterviewing techniques QuestionairesQuestionaires EthnographyEthnography ProtypingProtyping DocumentationDocumentation ModelingModeling RoleplayingRoleplaying Checklists of NFRsChecklists of NFRs

Page 8: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

ElicitationElicitation

Conflict Identification and Conflict Identification and NegotiationNegotiation

Page 9: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

AnalysisAnalysis

a deeper understanding of the product a deeper understanding of the product and its interactions, identify and its interactions, identify requirements, define high-level requirements, define high-level architectural design, allocating req to architectural design, allocating req to architectural components, and identify architectural components, and identify additional conflicts that merge additional conflicts that merge through considering architectural through considering architectural implementations and negotiating implementations and negotiating agreements between stakeholders agreements between stakeholders

Page 10: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

Analysis(cont)Analysis(cont)

Conceptual ModelingConceptual Modeling ML is very well known.ML is very well known. IEEE Std 1320.1, IDEF0 for functional IEEE Std 1320.1, IDEF0 for functional

modeling and IEEE Std 1320.2 IDEF1 X97 modeling and IEEE Std 1320.2 IDEF1 X97 for information modeling.for information modeling.

Architectural Design and Architectural Design and Requirement AllocationRequirement Allocation Architectural quality is measured by its Architectural quality is measured by its

ability to fulfill the stated requirements ability to fulfill the stated requirements

Page 11: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

SpecificationSpecification

documents that capture the system documents that capture the system and software req. in order to support and software req. in order to support their systematic review, evaluation, their systematic review, evaluation, and approval. Document that and approval. Document that describes the system to be describes the system to be developed in a format that can be developed in a format that can be reviewed, evaluated and approved in reviewed, evaluated and approved in a systematic way.a systematic way.

Page 12: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

Specification(cont)Specification(cont)

Qualities of an Individual Qualities of an Individual RequirementRequirement ConciseConcise CorrectCorrect NonambiguousNonambiguous FeasibleFeasible VerifiableVerifiable

Page 13: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

Specification (cont)Specification (cont)

Qualities of the Set of RequirementsQualities of the Set of Requirements RealisticRealistic ConciseConcise CompleteComplete ConsistentConsistent

Page 14: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

ValidationValidation

goes through the other four goes through the other four activities. Ensure the system meets activities. Ensure the system meets stakeholders requirements through stakeholders requirements through activities such as formal and activities such as formal and informal reviews informal reviews

Page 15: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

Validation(cont)Validation(cont)

Types of validationTypes of validation ReviewsReviews PrototypingPrototyping Model validationModel validation Acceptance TestsAcceptance Tests

Page 16: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

ManagementManagement

starts from the moment the first req starts from the moment the first req is elicited and ends only when the is elicited and ends only when the system is finally decommissioned. system is finally decommissioned. requirement management includes requirement management includes software configuration management, software configuration management, traceability, impact analysis, and traceability, impact analysis, and version control version control

Page 17: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

Management(cont)Management(cont)

Requirements traceabilityRequirements traceability Ability to describe and follow the life of Ability to describe and follow the life of

a requirement, in both a forward and a requirement, in both a forward and backward direction.backward direction.

Change RequestsChange Requests Managed systematicallyManaged systematically

Requirements attributesRequirements attributes

Page 18: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

ConclusionConclusion

Traditional MethodTraditional Method Agile MethodsAgile Methods

Page 19: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

My own opinionMy own opinion

Page 20: Software Requirements By Jane Cleland-Huang Presentation by Donovan Faustino

ValidationValidation