1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software...
-
Upload
jody-webster -
Category
Documents
-
view
214 -
download
1
Transcript of 1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software...
11
College of Engineering and Computer ScienceCollege of Engineering and Computer ScienceComputer Science DepartmentComputer Science Department
CSC 131CSC 131Computer Software EngineeringComputer Software Engineering
Fall 2006 Fall 2006
Lecture # 2Lecture # 2Chapter 6 & 7Chapter 6 & 7
System Engineering & Requirements System Engineering & Requirements EngineeringEngineering
22
System EngineeringSystem Engineering Before SW can be engineered, the system Before SW can be engineered, the system
and its envoriment must be understood.and its envoriment must be understood. To accomplish this :To accomplish this :
– Overall objectives of the system must be Overall objectives of the system must be determineddetermined
– The role of HW, SW, people, procedures must be The role of HW, SW, people, procedures must be identified…identified…
– Operational requirements must be elicited, Operational requirements must be elicited, analyzed, specified, modeled, validated, and analyzed, specified, modeled, validated, and managed.managed.
33
System Engineering – Two ViewsSystem Engineering – Two Views
Business Process EngineeringBusiness Process Engineering– Focuses on utilizing IT effectivelyFocuses on utilizing IT effectively
Product EngineeringProduct Engineering– Focuses on converting the customer’s Focuses on converting the customer’s
needs into a working/functional productneeds into a working/functional product
44
System EngineeringSystem Engineering
Concentrate not only on the software but Concentrate not only on the software but rather on the system as a whole and its rather on the system as a whole and its elements…elements…
SE occurs as a result of a process called SE occurs as a result of a process called system engineering.system engineering.
55
System ModelingSystem Modeling
Model the systemModel the system
– Easier to asses the systemEasier to asses the system– Easier to evaluate system components in Easier to evaluate system components in
relationship to one anotherrelationship to one another
More on system modeling later….More on system modeling later….
66
System Context Diagram (SCD)System Context Diagram (SCD)
It establishes the information boundary It establishes the information boundary between the system being implemented between the system being implemented and environment in which the system and environment in which the system operate.operate.
It defines all external producers of It defines all external producers of information information
It defines all external consumers of It defines all external consumers of information information
77
Requirements EngineeringRequirements Engineering
The outcome of the system engineering The outcome of the system engineering process is the specification of computer-process is the specification of computer-based system at the different levels. based system at the different levels.
88
Requirements EngineeringRequirements Engineering
Requirements engineering process can be Requirements engineering process can be described in seven steps:described in seven steps:
– InceptionInception– Requirement Elicitation Requirement Elicitation – Requirement ElaborationRequirement Elaboration– Requirement Analysis & Negotiation Requirement Analysis & Negotiation – Requirement Specification Requirement Specification – Requirement Validation Requirement Validation – Requirement Management Requirement Management
99
Requirements?Requirements?
DefinitionDefinition
“A feature of the system or a description of something the system is capable of doing in order to fulfill the system’s purpose”
Types of Types of RequirementsRequirements– FunctionalFunctional– Non-functionalNon-functional
StrengthsStrengths– Must/ShallMust/Shall– ShouldShould– WillWill
1010
Requirements ElicitationRequirements Elicitation
Why requirement elicitation is difficult?Why requirement elicitation is difficult?
– Problem of scopeProblem of scope The boundary of the system is ill-definedThe boundary of the system is ill-defined
– Problem of understandingProblem of understanding Customers are not sure of what is neededCustomers are not sure of what is needed
– Problem of volatilityProblem of volatility Requirements change over time.Requirements change over time.
1111
Requirements ElicitationRequirements Elicitation
TechniquesTechniques– Interview / MeetingInterview / Meeting– Survey / QuestionnaireSurvey / Questionnaire– ObservationsObservations– Temporary AssignmentTemporary Assignment– Business PlansBusiness Plans– Review Internal / External DocumentsReview Internal / External Documents– Review Software Review Software
1212
ElaborationElaboration
The information obtained in the elicitation The information obtained in the elicitation step is expanded and refinedstep is expanded and refined
Develop a refined modelDevelop a refined model
1313
Requirements Analysis & NegotiationRequirements Analysis & Negotiation
Once requirements have been gathered Once requirements have been gathered then ..then ..
Categorize requirements Categorize requirements Organize requirements into related subsetsOrganize requirements into related subsets Establish requirements relationshipsEstablish requirements relationships Examine requirements consistencyExamine requirements consistency Rank requirements based on the need of Rank requirements based on the need of
customers.customers.
1414
Questions That Must Be Asked…Questions That Must Be Asked…
Is each requirement consistent with Is each requirement consistent with the objective?the objective?
Have all requirements been Have all requirements been specified?specified?
Is each requirement really Is each requirement really necessary?necessary?
Is each requirement clear?Is each requirement clear? Is each requirement testable?Is each requirement testable? …………..
1515
Requirements SpecificationRequirements Specification
System Specification is the final System Specification is the final product of system and requirements product of system and requirements engineering.engineering.
– It serves as the foundation for HW, SW It serves as the foundation for HW, SW engineeringengineering
– It describes the function and It describes the function and performance of a system/product and performance of a system/product and its constraintsits constraints
1616
Requirements Specification…Requirements Specification…
A specification can be:A specification can be:
– A written documentA written document
– A graphical modelA graphical model
– A formal mathematical modelA formal mathematical model
– A prototypeA prototype
– Any combination of the above …Any combination of the above …
1717
Requirements ValidationRequirements Validation
Why requirements validation?Why requirements validation?
To Ensure the following:To Ensure the following:
– All system requirements have been stated clearlyAll system requirements have been stated clearly– Inconsistencies, errors, omissions have been Inconsistencies, errors, omissions have been
detected and correcteddetected and corrected– Product conforms to the standardsProduct conforms to the standards
Mainly done by Formal Technical Review TeamMainly done by Formal Technical Review Team
1818
Requirements ManagementRequirements Management
It is a set of activities that support It is a set of activities that support the project team to:the project team to:
– Identify , control, and track Identify , control, and track requirements and changes to requirements and changes to requirements at any time.requirements at any time.
Why requirement management??Why requirement management??– Because requirements change…Because requirements change…
1919
Requirements Review?Requirements Review?– Are the requirements complete?Are the requirements complete?
– Are the requirements concise?Are the requirements concise?
– Are the requirements correct?Are the requirements correct?
– Are the requirements consistent?Are the requirements consistent?
– Are the requirements modular? Can they accommodate Are the requirements modular? Can they accommodate change?change?
– Are the requirements realistic?Are the requirements realistic?
– Are the requirements needed by the customer?Are the requirements needed by the customer?
– Are the requirements traceable?Are the requirements traceable?