Software Development Models and Requirements Analysis
Model Outline
- Source (implementation and usability testing, development, design, analysis, feasibility study)
- Stages of SDLC: Project initialization, feasibility study, logical analysis and design, acquisition and operation, implementation development, evaluation, maintenance
Prototype
A sample of a simple system, a product that may or may not be disposable.
Rapid Application Development (RAD)
Reduces the software life cycle (faster development).
Object-Oriented Development (OOD)
Creates a representation of the real-world problem and matches it with the scope of the software solution.
End-User Development (EUD)
Allows the user the freedom to tailor modifications to an already developed program.
DS Spiral Model Systems
A systematic and incremental evolution model, where there are several regions in tasks that are populated by a series of events and activities.
Benefits:
- Complete definition of requirements is needed.
- Validation of requirements is easier from the end of the first interaction.
- Only the last interaction is jeopardized.
Disadvantages:
- Difficult to assess continuing client participation.
- Risks need to be subcontracted to produce a complete specification, which takes time.
Source Model for DS
A model developed in several stages up and/or downward and is incremental.
Cascade Model for DS
A systematic model developed in several successive and sequential descending stages.
Cons:
- Does not really reflect the software development process.
- Takes a long time to go through the cycle.
- Maintenance is performed on the source code revisions.
- Complex projects are very difficult.
- Imposes a project management structure.
TRADITIONAL MODEL
Requirements
Entry Requirements:
Where is the information? What kind of information is it? Is the information absolutely needed? What process feeds it?
Output Requirements:
What form must the data be shown in? Is information required on paper? What are the status reports? Is there a restricted area?
Process Requirements:
What initiates the activity? How long does it take to do it? What methods are used for calculations? What is the frequency of the process?
Storage Requirements:
Where will the information be saved? What currently installed capacity is there? What level of security is used? What is your database manager?
File
An information element formed by a set of records.
File Problems:
(redundancy, consistency, security, insulation)
Database
A set of memory stored in auxiliary memory that allows direct access and a set of programs that manipulate data.
Tables or Tuples
A collection of records containing information of RECORDS.
Record
A set of interrelated fields identified by a keyword.
Field
The smallest unit to which one can refer in a computer program.
Primary Key or Key Field
The field that uniquely identifies a record; for this reason, it cannot be repeated within the table.
Foreign Key or Candidate Key
A field that relates two tables.
Database Manager
The application that allows the administration, access, and maintenance of data from a system or organization (e.g., MySQL, Oracle).
Relations and Cardinality
The way two tables are related in a model; these can be one-to-one, one-to-many, or many-to-many.