Computer System Development
Computer System Development
A system is a collection of elements or components that are organized for a common purpose. A computer system consists of hardware components that have been carefully chosen so that they work well together and software components or programs that run in the computer.
Information is stimuli that have meaning of some context for its receiver. When information is entered and stored in a computer, it is generally referred to as data. After processing (such as formatting and printing), output data can be perceived as information. It is a meaningful data that helps to decision makers to take some necessary action. It is the result of processed data.
Information system is an integrated set of components for collecting, storing, and processing data and for providing information, knowledge, and digital products. Business firms and other organizations rely on information systems to carry out and manage their operations, interact with their customers and suppliers, and compete in the marketplace. Information systems are used to run inter-organizational supply chains and electronic markets.
Many major companies are built entirely around information systems. These include eBay, a largely auction marketplace; Amazon, an expanding electronic mall and provider of cloud computing services; Alibaba, a business-to-business e-marketplace; and Google, a search engine company that derives most of its revenue from keyword advertising on Internet searches. Digital goods such as electronic books, video products, software and online services, such as gaming and social networking, are delivered with information systems. Individuals rely on information systems, generally Internet-based, for conducting much of their personal lives: for socializing, study, shopping, banking, and entertainment.
System Development Life Cycle (SDLC):
An effective System Development Life Cycle (SDLC) should result in a high quality system that meets customer expectations, reaches completion within time and cost evaluations, and works effectively and efficiently in the current and planned Information Technology infrastructure.
It is the methodology, which consists of a set of development activities in prescribe order. It is a life span of information system from beginning as investigation to delivery to end user and maintenance support. It creates the framework carefully structuring, planning, and control the process of developing an information system which fulfills the demands of information needs.
The system development life cycle consists of following activities or process.
- System Planning (Investigation)
- System Analysis
- System Design
- System Development (coding)
- System Implementation
- System Maintenance and Evaluation
Fig: System Development Life Cycle (SDLC)
System Planning (Investigation):
This is the first phase in the systems development process. It identifies whether or not there is the need for a new system to achieve a business’s strategic objectives. This is a preliminary plan (or a feasibility study) for a company’s business initiative to acquire the resources to build on an infrastructure to modify or improve a service.
Planning involves forecasting because it deals with the future uncertainty this means that flexibility must be incorporated in plans. The company might be trying to meet or exceed expectations for their employees, customers and stakeholders too. The purpose of this step is to find out the scope of the problem and determine solutions. Resources, costs, time, benefits and other items should be considered at this stage. Planning gives benefit to any new system that is going to establish by reducing uncertainty, improve economy of operation, focusing on objectives and providing a device for control of operations.
Planning must answer these questions, what is to be done in future? How to do it?
When to do it? Who is to do it?
This phase includes several feasibility studies such as operational feasibility, technical feasibility, financial feasibility, legal or political feasibility etc.
In this stage, a detail study of the present system is done. The system analysis trying find out the drawbacks of the present system and suggestions will put forward for new system.
In this phase, businesses will work on the source of their problem or the need for a change. In the event of a problem, possible solutions are submitted and analyzed to identify the best fit for the ultimate goals of the project. This is where teams consider the functional requirements of the project or solution. It is also where system analysis takes place or analyzing the needs of the end users to ensure the new system can meet their expectations. Systems analysis is vital in determining what a business’s needs are, as well as how they can be met, who will be responsible for individual pieces of the project, and what sort of timeline should be expected.
Any error in the analysis phase may lead to faulty system, which is very dangerous to organization. This is the time when the system development team gathers the sufficient information from the different sources. Without gathering sufficient information of the present system, it’s difficult to develop the better system. So it’s necessary to have in-depth knowledge of the present system.
The various methods to collect the information of the present system is interview, questionnaire, observations, sampling, and research.
In this phase the necessary specifications, features and operations is design that will satisfy the functional requirements of the proposed system. This is the step for end users to discuss and determine their specific business information needs for the proposed system. During this phase designer will consider the essential components (hardware and/or software) structure (networking capabilities), processing and procedures for the system to accomplish its objectives.
This is the most creative and challenging phase of SDLC. This is concern with the design of the final system. Designer should focus on data security, user friendly system, fast processing, flexibility and durability of the system.
System design can use one of the two approaches either top-down approach or bottom-up approach. In the top-down approach where designer first recognize major components, interfaces and link up smaller subsystem together to form whole system. In bottom-up approach where designer first recognize minor components, interfaces and link up together to form a whole system.
Nowadays, the prototypes are often used to build up the system. A prototype is a small design of the system which looks or acts like the original system. With the help of prototype it becomes easy to do refinement and review while designing the system.
System development refers to creating the new information system based the physical design of the system. It involves converting design specification into executable programs. This is the phase where the real work begins. In this phase a programmer, network engineer, and database developer are brought to do the major work on the project. This work includes using a flow chart to ensure that the process of the system is properly organized. The development phase marks the end of the initial section of the process. Additionally, this phase signifies the start of production. Focusing on training can be a huge benefit during this phase.
Application developer or programmers are responsible for developing and maintaining end-user application. System programmers are responsible for developing and maintaining internal functions and operating system programs that links application programs to system software and hardware.
Managers should clearly understand development and production environment so that they can assign right programmer to right place and assign appropriately programmer’s responsibility.
Finally, the programmers eliminates all syntax and logical error if found. This process is consider as complete when clean compile of the system is done and program codding has been approved.
This phase involves the actual installation of the newly-developed system. The cutover (data migration form old to new system) typically happens in this phase, this can be a risky (and complicated) move. Both system analysts and end-users should now see the realization of the project that has implemented changes. This phase consist of implementation or user of the system into a production environment, resolution of the problem identified in testing phase. The new system is installed and operated with old system until it has been checked out. Then the old system is removed from operations and new system will be in use.
The implementation operation is divided into four categories.
- Direct Conversion: In which old system is stopped and new system comes into effect immediately but such implementation is very hazardous because the end user might not have sufficient knowledge to interact with new system.
- Parallel Conversion: In which old system and new system is operated parallel in an action. This sort of conversion is effective as we can test the new system while working with old system.
- Phased Conversion: In which new system is introduced partially one after another. This is the good idea because we can correct out our error efficiently so as to build a robust (strong/healthy) system i.e. we can check the mistake in each component of the system if it occurs we can correct immediately.
- Pilot Conversion: In which the new system is installed for a few users, who evaluate it and help decide whether it is suitable for implement or not. This method is handy for new product, as it ensures functionality at a level that can perform in real operation.
System Maintenance and Evaluation:
This is the final phase, it involves maintenance and regular required updates. In this step end users can fine-tune the system, if they wish to boost performance, add new capabilities or meet additional user requirements system developer will provides necessary services.
In any system is in use there requires periodic maintenance of hardware and software. If new system is inconsistence or contradict with the design specification, then changes have to be made.
Documentation means preparation of the written description of what functions performed by the system, how these function are carried out, purpose of the system, information flow of the components and operation procedures of the system. It helps users to understand and maintain the system.
A new tem of operators could operate the system on the basis of documentation of the system available. With the help of documentation designer which is not familiar with organization could reconstruct the system. The system analyst will have a valuable data source for updating and maintaining the system in future.
The important techniques of the documentation are flow chart, comments, program listing etc.