Level 152 Level 154
Level 153

Software Engineering Methodologies & Processes

51 words 0 ignored

Ready to learn       Ready to review

Ignore words

Check the boxes below to ignore/unignore words, then click save at the bottom. Ignored words will never appear in any learning session.

All None

Requirements Engineering
The process of establishing THE SERVICES that the customer requires from a system and THE CONSTRAINTS under which it operates and is developed.
The requirements themselves are the __________ of the system services and constraints that are generated during the requirements engineering process.
User Requirements
Statements in natural language plus diagrams of the services the system provides and its operational constraints. Written for customers.
System Requirements
A structured document setting out detailed descriptions of the system's functions, services and operational constraints. Defines what should be implemented so may be part of a contract between client and contractor.
functional requirements
Specific features and functions that a proposed IT system must have.
non-functional requirements
Conditions that a proposed IT system must meet, such as working on certain hardware or giving results within a certain time.
Domain Requirements
Constraints on the system from the domain of operation.
Requirements Completeness and Consistency
In principle, requirements should be both complete and consistent. IN PRACTICE, IT IS IMPOSSIBLE TO PRODUCE A COMPLETE AND CONSISTENT REQUIREMENTS DOCUMENT.
Requirements Completeness
They should include descriptions of all facilities required.
Requirements Consistency
There should be no conflicts or contradictions in the descriptions of the system facilities.
Non-Functional Classifications
Product Requirements, Organizational Requirements, External Requirements
Product Requirements
Requirements which specify that the delivered product must behave in a particular way.
Organizational Requirements
Requirements which are a consequence of organisational policies and procedures.
External Requirements
Requirements which arise from factors which are external to the system and its development process e.g. INTEROPERABILITY requirements, legislative requirements, APPLE, etc.
Software Requirements Document
The official statement of WHAT IS REQUIRED of the system developers.
The SRD should include both a ...
DEFINITION of USER requirements and a SPECIFICATION of the SYSTEM requirements.
The SRD is NOT a...
The SRD should say __________ the system should do
The Structure of a Requirements Document
System Requirements Specification, System models, System evolution, Appendices, Index
System Requirements Specification
This should describe the FUNCTIONAL AND NONFUNCTIONAL REQUIREMENTS IN MORE DETAIL. If necessary, further detail may also be added to the nonfunctional requirements. INTERFACES TO OTHER SYSTEMS MAY BE DEFINED.
System Evolution
This should describe the fundamental assumptions on which the system is based AND ANTICIPATED CHANGED DUE TO HARDWARE EVOLUTION, CHANGING USER NEEDS, AND SO ON. This section is useful for system designers as it…
WHAT the system should do.
In principle, the requirements should describe...
The design should describe
HOW it does this.
Requirements Engineering Processes
Elicitation, analysis, validation, management
Requirements Elicitation and Analysis
Software engineers work with a range of system stakeholders to understand the required SYSTEM PERFORMANCE and HARDWARE CONSTRAINTS.
Requirements Validation
Concerned with demonstrating that the requirements define the system that the customer really wants.
Requirements Management
the process of documenting, analyzing, tracing, prioritizing and agreeing on requirements and then controlling change and communicating to relevant stakeholders.
Requirements Elicitation and Analysis Process
Requirements discovery, Requirements classification and organization, requirements prioritization and negotiation, requirements specification.
Requirements Discovery
Interacting with stakeholders to discover their requirements. Domain requirements are also discovered at this stage.
Requirements Classification and Organization
Groups related requirements and organizes them into coherent clusters.
Prioritization and Negotiation
Prioritizing requirements and resolving requirements conflicts.
requirements specification
Clear list of the functional and non-functional requirements for a proposed IT project.
Real-life examples of how a system can be used.
Scenarios should include
A description of the NORMAL FLOW of events and a description of WHAT CAN GO WRONG.
100 times
Fixing a requirements error after delivery may cost up to __________ the cost of fixing an implementation error
Process of Requirements Checking
Validity, Consistency, Completeness, Realism, Verifiability
Requirements Realism
Can the requirements be implemented given available budget and technology
Requirements Verifiability
Can the requirements be checked? TRACEABILITY
Behavioral Models
Models of the dynamic behavior of a system as it is executing
Data stimuli for Behavioral Models
Some data arrives that has to be processed by the system
Event stimuli for Behavioral Models
Some event happens that triggers system processing. Events may have associated data, although this is not always the case.
The Essential Elements of a Use-Case
Name, Textual Description, Actor, Preconditions, Post Conditions, Priority, Steps (Scenario)
Use Case Diagram
a set of scenarios that describes an interaction between a user and a system.
use cases and actors
Two Main Components of a Use Case Diagram
Software Architectural Design
The design process for identifying the SUB-SYSTEMS making up a system and FRAMEWORK for sub-system CONTROL and COMMUNICATION.
software architecture
The output of this architectural design process is a description of the
Architecture in the small
is concerned with the architecture of INDIVIDUAL PROGRAMS. At this level, we are concerned with the way that an individual program is decomposed into components.
Architecture in the large
is concerned with the architecture of COMPLEX ENTERPRISE SYSTEMS.
class diagram
A diagram used to represent data and their relationships in UML object notation.
Sequence Diagrams
Are used to model the logic of usage scenarios, by showing the information passed between objects in the system through the execution of the scenario. Shows how classes and objects interact during a scenario.
State Diagrams
show how the system reacts to internal and external events