Unit 4 Lecture
Unit 4 Lecture
Part II
Analysis Process
Refinement
Done with the clients to ensure that requirements are correct Various types of models are built for understanding by the team
Development specs are created that are given to the development team
Modeling
Specification
Analysis Techniques
Structured Analysis
Data Modeling ERD Functional Modeling DFD Behavior Modeling State Transition
Analysis Techniques
Use Cases Functions Identify Classes & Objects Identify object attributes and operations Identify structures and hierarchies Identify Object Relationships Identify Object Behavior Test
Analysis Techniques
ORM Object Role Modeling SADT Structured Analysis Design Technique PSC Problem Statement Language
There are many ways to show the same concepts. Use the way that you and your organization best understand and the one that helps you deliver more efficiently
Requirement Specifications
In all cases, requirements must be specified to developers from analysts In the case of a waterfall project, this may done with a Requirements Specification Document that follows the format of a given organization This document will not only include data and functional requirements, but may also include hardware and software requirements
Correctness: Every requirement should represent a function of the developed system Completeness: Every requirement is in the document Certainty: Every requirement is unambiguous Verifiability: You can verify that the requirement was met by using the system Consistency: Requirements dont conflict with each other Modifiability: Changes can be made easily Traceability: The origin of every requirement can be identified
Functional Requirements: Specifies the output from every given input. Performance Requirements: Capacity (static) requirements and throughput (dynamic) requirements Design Constraints: Hardware limitations, Security, Fault Tolerance, Standards
Natural Language: Easy to understand, but can be verbose or ambiguous Structured English: 1.1.1.2, etc Regular Expressions
Used mostly for data validation (for example, make sure that someone passes a valid email address) Good to know these!! They are a part of many languages such as JavaScript.
Decision Tables: Specifies conditions and actions that result from them
Other Resources
ORM Object Role Modeling http://www.orm.net/