From the link:
"ABOUT:
- Software development is the process of creating a computer software
- It includes the software release life cycle of preparing a design, coding the program, and fixing the bugs. The final goal is software release of a product that serves the wishes of users
- Software product is usually a result of research, new development, prototyping, modification, reuse, re-engineering, maintenance, or any other activities
A software development process (model, methodology) is a system that is used to structure, plan, and control the process of developing information systems. Each model is defferent, more or less structured and is considered to be suitable to only some kinds of projects.[3]
There are several stages of software development:
Analyzing the problem
- Market research
- Gathering requirements for the proposed software
- Devising a plan or design for the software
- Implementation (coding) of the software
- Testing the software
- Deployment
- Maintenance and bug fixing
- Understanding the need: There are different sources of ideas for software products like market research. The next step is market evaluation. It includes a check of cost and time assumptions, economic feasibility, fit with existing channels distribution, effects on existing product lines, required features, fit with the company's marketing objectives. This process is also connected with non-technical activities like human resources, risk management, intellectual property, budgeting, crisis management, etc.
- Planning: An important task in creating a software program is understanding the requirements. The software engineers must accept the client's idea and adapt it to the working process.
- Designing: After establishing the requirements, the engineers start creating a software design document. Design of the software means the high-level design of the main modules with a full picture of how the parts fit together. The language, operating system, and hardware components should be clear at this stage.
- Implementation, testing and documenting. There are 3 next processes which are combined: (1) Implementation - programming the code for the project (2) Testing - looking for defects (3) Documenting - making documents of the inner design of software, API can be also included
- Deployment and maintenance: The deployment includes installation, customization, testing, and possibly a longer period of evaluation. Software training and support are important because software is only effective if it is used rightly. Maintaining and improving software is the stage to cope with new faults or requirements, it usually takes a lot of time and effort"
No comments:
Post a Comment