On and Offshore software delivery model
Elensoft Technologies employs an on and
offshore development model
that focuses on seamless integration between on-site and
offshore development teams in order to achieve high
quality deliverables on time at cheaper rates taking
advantage of our geographic location.
Projects are typically delivered by a global team with about
10 - 20 percent of the team members located onsite and the
balance at our offshore development center. The onsite team
defines requirements, reviews prototypes and manages scope
changes. The offshore team ensures quality execution at a low
cost. This is a tightly coupled model that allows our team
members to closely participate with you during the working
day and provide inputs to the offshore center for an
overnight delivery.
The objective is to fully obtain the benefits of offshore
development such as :
- High quality work at lower development cost,
- 24/7 development cycle leveraging the U.S.A - India
time difference,
- A flexible resource base that can be further
strengthened anytime
Software Process Models
To solve real time complex business problems, a software
engineer or a team of engineers must incorporate a
development strategy that encompasses the process, methods,
and tools layers. This strategy is often referred to as a Software
Process model.
A software Process model is chosen based on the nature of
project and application, the methods, and tools to be used,
and the controls and deliverables that required.
In following section, a variety of Software process models
for software engineering are listed. Each represents an
attempt to bring order to an inherently chaotic activity.
- Linear Sequential Model (old fashioned but reasonable approach
when requirements are well understood)
- Prototyping Model (good first step when customer has a
legitimate need, but is clueless about the details, developer needs
to resist pressure to extend a rough prototype into a production
product)
- Rapid Application and Development (RAD) Model (makes heavy
use of reusable software components with an extremely short development
cycle)
- Incremental Model (delivers software in small but usable
pieces, each piece builds on pieces already delivered)
Spiral Model (couples iterative nature of prototyping with the controlled
and systematic aspects of the linear sequential model)
- Win-Win Spiral Model (eliciting software requirements defined
through negotiation between customer and developer, where each party
attempts to balance technical and business constraints)
- Concurrent Development Model (similar to spiral model often
used in development of client/server applications)
Component-Based Development (spiral model variation in which applications
are built from prepackaged software components called classes)
- Formal Methods Model (rigorous mathematical notation used
to specify, design, and verify computer-based systems)
Fourth Generation (4GT) Techniques (software tool is used to generate
the source code for a software system from a high level specification
representation)
Software development process
1. Software Requirements Analysis and Management
After the initial step of team formation, we do a thorough
needs analysis of customer requirements including determining
needs (elicitation), addressing how those needs need to be
addressed (triage) and documenting the desired external
behavior of the systems (specification)
- Allocated Requirements Review
- Managing Systems Requirements Allocated to Software Policy
2. Software Project Planning
Planning is a critical phase which involves creating
high-level architecture, delivery and deployment schedules
for software development, information and capacity
architecture, and third-party integration.
- Software Development Plan
- Software Estimates Procedures
- Project Schedule
- Software Life Cycle Definition
- Software Planning Data
- Software Project Activities and Commitments
- Software Engineering Facilities and Support Tools Plan
- Managing Systems Requirements
3. Software Project Tracking and Oversight
- Revision of Software Development
- Plan Peer Review Plans
- Change Requests and Problem Reports Procedure
- Formal Reviews of Selected Milestones
- Project Tracking and Recording Procedures
4. Software Quality Assurance
- Software Quality Assurance Plan
- Policy for Implementation of SQA
- Deviations in Software Activities and Software Work
Products Procedure
- SQA Participation Procedure
- SQA Reports
- SQA Reviews Procedure
5. Software Configuration Management
- SCM Activities Plan
- SCM Policy
- Changes to Baselines Procedure
- Software Baseline Library Product Creation and Release
Control Procedure
- Configuration Items/Units Status Review Procedure
- Standard Software Configuration Management Reports
- Baseline Audits Procedure
6. Testing
After the various components are developed, they are
integrated and rigorously tested as a complete solution.
Application behavior is compared with the initial
specifications and any deviations are identified and
corrected.
- Specification Testing
- Functionality Testing
- Integration Testing
- Stress/Real-world Testing
7. Implementation
After the project is completed, it is deployed across an
enterprise by working closely with its internal IT team and
training is imparted to the end-users of the system.
- Enterprise-wide Deployment
- End-user Training
- System/Helpdesk Training
- Documentation Handover
8. Maintenance
Our maintenance phase covers system health maintenance
including database, application and network maintenance.
Required application feature enhancements are planned at this
stage, and are developed and executed as and when
appropriate.
- System Health Maintenance
- Feature/Application Enhancements
Software
Following tools are being used:
- Project Management - Microsoft Projects
- UML design - Rational Rose, Clear case
- Case tools - Visio, Developer 2000, Visual Modeler, Erwin
- Testing: Win Runner, Rational Suite
Web
Development Process
RFID
Consulting | RFID Products |
Long range RFID
|