NETMATION
Home
Welcome
Newsletter
Job Openings
Press Releases

BUSINESS
Resumes
Computer Store

CONSULTING
Consulting
Justify
Full Time
Temps
Management
Experience
White Papers
Quote
FAQ

SOFTWARE
NCAP
Partnership
Features
Screenshots
Download
Quote
FAQ

HELP
Contact
Coming Soon
Legal
Site Map

---
Custom Software Development
---

Click here!

Introduction
First of all it is necessary to distinguish between commercial and custom software. Commercial software is that which you would purchase in a shrink wrapped package from a software development company. Custom software on the other hand is written for you by a professional programming staff to address needs that are unique to your business.

In the area of software development and software engineering, it is essential to establish a common approach for building information systems. This will ultimately result in lower development and maintenance cost and yield higher quality software. In order to establish this common approach, there are many obstacles to overcome in terms of the Business, Technology, Tools, Technique and other system development issues.

In an effort to address the most pertinent data processing concerns, Netmation adheres to a software development methodology. The results of any software development effort should produce at a minimum the following:

  • A product that satisfies User requirements
  • A product that was developed at an acceptable cost within a reasonable schedule
  • A product that is maintainable at a reasonable cost
  • A product that does not produce erroneous results
  • A product that operates within an acceptable set of specifications, such as performance and ease of use
  • Documentation describing the design and operation of the software.

There are numerous approaches which may be employed when establishing a common approach for system building throughout the entire methodology. Four of the most frequently used approaches are:

  • Information Engineered Approach
  • Data-Driven Approach
  • Process-Driven Approach
  • Traditional Structured Approach

Information Engineered Approach
Information Engineering is an approach to systems development in which an interlocking set of formal modeling techniques and CASE tools are used to develop a comprehensive business Knowledge Base which contains the information needed to develop and maintain computer systems. The primary characteristics of an Information Engineered Approach are:

  • Strong Emphasis on Data Sharing
  • User Driven Approach
  • Emphasis on Business Analysis
  • Emphasis on Automation
  • Graphics Orientation
  • Strategic Foundation
  • Focuses on Developing a comprehensive Knowledge Base
  • Utilizes the Divide and Conquer Approach.

Data-Driven Approach
A Data-Driven Approach is one in which data and their inherent structure are analyzed independently from the application and are used to drive system development efforts. Data Models are used to define Business data in a manner that satisfies Enterprise-wide Data requirements and promotes data sharing.

The most important aspect of a Data-Driven approach is that the Data is used to structure or drive all development work. This approach is considered to be feasible by many because the data and their relationships are more stagnant and less susceptible to change. The definitions of data as represented in the data model forms the foundation for stable data bases and system integration.

Process-Driven Approach
The Process-Driven approach is functionally oriented which inevitably leads to systems and files that are biased toward specific business problems. This approach may be desired in certain business scenarios, however it usually offers limited flexibility and/or integration capabilities.

Traditional Structured Approach
The Traditional Structured approach may be categorized as a "Top- Down" approach for system development. This approach usually breaks complex loosely-defined projects into well-defined controllable projects. Some of the Key characteristics of the Traditional Structured Approach are:

  • Larger Project Teams
  • Longer Project Duration
  • Typically, one large project with complex scope
  • Programmers Translate Business Needs into System Specifications
  • Paper-based specifications and manual documentation
  • More emphasis on Coding and Testing
  • Technology Driven
  • Volumes of Narratives, few diagrams

Maintenance
Another area of ongoing concern is Maintenance. IBM Systems Journal reports that the industry is becoming increasingly more concerned with uncontrollable Maintenance Problems. They further reported the results of a survey in which 149 managers with programming staffs ranging from 25 - 800 indicated that Maintenance Tasks (program fixes/modifications) represented 55 to 95 percent of their work load. IBM System Journal also reported estimates of $30 billion are spent each year on maintenance ($10 billion in the United States), with 50 percent of the DP budgets of most companies going to maintenance and that 50 - 80 percent of one million programmers or programming manager's time are spent on maintenance.

A Massachusetts Institute of Technology study indicated that for every $1 allocated for a new development project, $9 will be spent on maintenance for the life cycle of the project. Most organizations have come to the conclusion that these statistics are unacceptable and that a solution must be found.

A System Development Methodology supported by Software tools (e.g. CASE), significant promise in alleviating many of the Maintenance Problems. Datamation (July 1989) reported that Using Methodology/Case tends to result in a shift in development time to the front-end (e.g. Planning, Analysis & Design) of the development cycle. Moreover, its use significantly lowers the time spent on writing code and maintaining software.

Project Work Plan
All Netmation development project adhere to specific detailed work plans. This supports the work breakdown structure and scheduling requirements. The work plan will include estimates and budgets and the work breakdown structure. The work plan will have access to historical project costs and estimates which will support the estimating functions. Moreover, by utilizing standard estimating bases and costs, the ability to generate accurate control estimates and budgets will be possible.

Several of the key objectives and benefits of Project Planning and Work Plan creation are as follows:

  • Improving capabilities to provide more accurate estimates and budgets to minimize cost overruns and improve client satisfaction.
  • Decreasing the time and cost of defining a project through utilization of historical project/design data and standardized information such as activities, procedures and deliverables.
  • Decreasing the time and cost of planning a project by providing application systems and integrated data bases which support the business functions and improve the overall work flow.
  • Improving scheduling and estimating capabilities through enhanced information on vendors' prices and lead times. Access to vendor information will not only benefit the planning effort, but will also pay-off during the construction phase.

Phased Approach Overview
Quality Assurance is a review process which is performed in each phase of a project. The reviews take place at the front-end and at key check points and deliverables to verify that quality is built into each step of the development project. The establishment and monitoring of milestones for these projects will ensure successful and timely implementation of these systems. Once the methodology is selected, the specific activities and milestones can be finalized.

Each design, implementation and installation project of applications systems development will have the following major activities/milestones.

Phase 1 - Data Integration Requirements

Define Data Requirements
Define integration requirements for related applications.

Review Present Systems
Review the current application systems identified in the project descriptions. This allows for a more detailed analysis of the applications to ensure/confirm decisions made during the Long Range Information Systems Plan. Involves defining the functional, technical and operational requirements.

Construct Logical Model
Depict the new systems' functions and the flow of data between them.

Design Logical Relationships
Develop relationships that are required to support the functions of the new systems data base.

Evaluate and Select Software
The current systems will be evaluated against third party software and a final decision made whether to custom build the new system, acquire a software package or enhance the system.

Functional Specifications Report
Summarization of the overall design effort which is carried over into the detail design and programming tasks of the Implementation phase. Prototyping the proposed system may be used to help develop a specification report or serve as the preliminary version of the implemented system.

Short Term Improvements

Will be defined and implemented as appropriate.

Quality Assurance
Review the logical data model including data definitions and relationships between data for correctness, completeness, and consistency. This can be best achieved through prototyping with end-user participation and review.

Phase 2 - Design

General Systems Design
Evaluate the technical design and implementation alternatives and select the best approach for the new system. Develop a user view of the system that includes the preliminary design of screens, reports, controls and procedures.

Define Process Functions
Provides a view of the processing requirements to support the design. Determine strategies for implementing the new system in the client's organization.

Issue Technical Design Report
Summarizes the overall technical design including the technical architecture, data base, testing and conversion approach and resource requirements.

Security/Control Requirements

Defined for all applications and data bases.

Implementation Schedule
This is a work plan and schedule for installation which includes benefits and cost estimates. This plan is presented for executive review for approval to proceed with system implementation.

Quality Assurance
Verify and validate the physical systems architecture, external design (data base, screens, reports), and the implementation strategies. Validation of performance requirements of the new system will also be done.

Phase 3 - Implementation

Detail Design
This includes finalizing the user view of the system and designing in detail the required telecommunications, the system controls and procedures, and the physical architecture of the data base. Also includes constructing a mid-level structure chart of the system's internal architecture to help identify major programs or program groups.

Programming
This is performed utilizing the detail design output.

Develop Procedures
This provides support on user procedures, training materials and program documentation.

Conversion Preparation
This is performed to plan for the conversion of data and information to be maintained in the integrated data bases.

Systems Testing
This ensures that the complete application systems and integration requirements have been tested, including user testing and procedures.

Quality Assurance
Verify and validate the systems test plan, acceptance test plan, training plan, data conversion plan, and operations plan for correctness, completeness, and consistency.

Phase 4 - Installation

Training
This includes coordinating and conducting the necessary training for engineers and support personnel for each installation.

Data Conversion
This creates and/or converts all data necessary for the new system. Validates the data and maintains it until the system is placed in production.

Post Conversion Review
This allows the systems developers to review the effectiveness of the implementation effort.

Quality Assurance
Ensure all implementation plans have been executed and any client concerns have been addressed.

Click here!

---

netmation.com | netmation.net | netmation.org | netmation.tv

Copyright © 1991-2005 Netmation Inc. All Rights Reserved
Site Designed and Hosted by Netmation Inc.