Isdi, Bca Ii
Isdi, Bca Ii
Software Specifications
&
Requirement Analysis
System, Analysis & Design
System - It is an organized relationship among functioning
units or components. It is an orderly arrangement of it
components. It is a collection of components that work
together to achieve some objective.
General Description
- Product Perspective
- Product Functions
- User Characteristics
- General Constraints
- Product Design (To be continued)
Specific Requirements
- Functional Requirement
- External Interface Requirement
- Performance Requirement
- Design Constraints
- Logical database requirement
- Functions
Analysis
Analysis includes those tasks that go into determining the
needs or conditions to meet for a new product.
Composite Attribute
Multi-Valued Attribute
Derived Attribute
Data dictionary
Data Dictionary is a repository of description of data in data
base. Data Dictionary is the place for storage of data about
data.
The field includes both the mathematical study of logic and the
applications of formal logic to other areas of mathematics. The
unifying themes in mathematical logic include the study of the
expressive power of formal systems and the deductive power
of formal proof systems.
File management:
- OS provides service to write new files or take input from some
files
- Involves secondary storage management.
Program Execution:
- Provides an environment which involves the allocating and
deallocating memory, CPU scheduling in case of
multiprocessing.
Device Management:
- The operating system manages I/O.
(To be continued)
Communication:
- OS provides service of message passing between processes.
Security:
- Internal: Protects the computer’s resources from the
programs concurrently running on the system.
- External: Protection from the network computers and users.
Error Detection:
- OS constantly monitors the system for detecting the errors.
Operating system needs
To provide an interface between the hardware and the
user.
Introduction
- Summary of SDP document
- Scope and purpose of SDP document
- System level project description
- Software sub system description
Resource and Schedule estimate
Organization and Staff
Technical management and control
Standards and Procedures
Documentation
Verification and Validation
Maintenance
CASE TOOLS
CASE stands for Computer Aided Software Engineering.
Documentation
Categories of case tools
Support Software
Data Dictionary
Decision Tables
Structure Charts
Structured English
Decision Trees
Pseudocode
Software design objectives
To produce various models that can be analyzed
and evaluated to determine if they will allow the
various requirements to be fulfilled.
Message Coupling
Data Coupling
Stamp Coupling
Control Coupling
External Coupling
Common Coupling
Content Coupling
No direct Coupling
Cohesion
It is the measure of strength of the association of elements
within a module.
Communicational Cohesion
Sequential Cohesion
Functional Cohesion
Logical Cohesion
Temporary Cohesion
Coding
Coding means translating the detailed design of a
software product, developed during the design phase,
into a sequence of statements that can be executed by
the computer.
(To be continued)
The decision criteria include the following –
- Compiler status
- Programming Team Experience
- Availability of Training
- Language Library
CPU Efficiency
- Memory Efficiency
- Complexity
- Human factors
- System Interfaces
- Reusable Code
System Testing
- It is designed to uncover weaknesses that were found in
earlier tests.
- It includes forced system failure and validation of total
system as it will be implemented by its user in the
operational environment.
System Documentation
- All design and test documentation should be well prepared
and kept in the library for future reference.
- The library is the central location for maintenance.
(To be continued)
The software maintenance phase involves changes to the
software in order to correct defects and deficiencies found
during usage as well as the addition of new functionalities.
Process
› Extensive coordination required to handle stream of
Maintenance Requests
Technical
› Covering full impact of changes
› Testing very expensive compared with the utility of each
change
- Focused tests ideal but expensive
- Regression testing still required
TYPES OF MAINTENANCE
Corrective
- Defect identification and removal
Adaptive
- Changes resulting from operating system,
hardware or DBMS changes
Perfective
- Changes resulting from user requests
Preventative
- Changes made to the software to make it more
maintainable
(To be continued)
NEED OF SOFTWARE
MAINTENANCE
Maintenance of software is required basically for
the following reasons that are as under –
Enhancement to system
Software Maintenance Roadmap:
Identify
corporate Keep application useful after
practices delivery
- Fix defects
- Enhance the application
Plan
project
Maintain
Analyze
requirements
Integrate
Design & test system
To ensure quality
Exchaustive testing
Requirement Traceability
Tested Items
Testing Schedule
Bottom up Testing
Thread Testing
Stress Testing
Program Testing
- A program represents the logical elements of a system.
- It must compile and test data correctly.
- It must tie properly with other programs.
- The actual output is compared with the expected output.
String Testing
- Each program is tested to see whether it conforms to related
programs in the system.
- Programs are related to one another and interact in total
system.
- Each part of the system is tested against the entire module.
System Testing
- It is designed to uncover weaknesses that were found in
earlier tests.
- It includes forced system failure and validation of total
system as it will be implemented by its user in the
operational environment.
System Documentation
- All design and test documentation should be well prepared
and kept in the library for future reference.
- The library is the central location for maintenance.
Test case
Traceability matrix
Test script
Test suite
Test data
Test harness
PROJECT FORMULATION
Project Formulation is the foremost decision
taken by an entrepreneur while setting up an
enterprise. It provides a mechanism for
controlling expenditure on project development.
General Information
Product
Market potential
Process and Know how
Plant and Machinery
Location
Building
(Continued)
• Raw material
• Utilities
• Effluents
• Personnel Requirement
• Capital Cost
• Working Capital
• Mode of Finance
• Manufacturing Cost
• Financial Analysis
• Implementation Schedule
APPROACHES OF PROJECT FORMULATION
Following are the approaches of Project formulation:
•Feasibility Analysis
- Pre Feasibility Study
- Feasibility Study
- Project Report
• Techno Economic Analysis
- Techno Analysis
- Economic Analysis
• Project Design and Network Analysis
(Continued)
• Input Analysis
• Financial Analysis
• Managerial Appraisal
• Environmental Analysis