Слайд 1Lecture 1
Basics of software development
O. Fedorova, associate professor of
Department PMI
Слайд 2The purpose and objectives of the course
The aim of the
course is to develop basic knowledge of the principles of
software development (software).
The objectives of the course is the study of the basic concepts and provisions of the methodology and software technologies, the general principles of software development, the acquisition of practical skills in the use of tools for software development.
Слайд 3It is now widely used concepts of system (including the
process) approach, adapted to the software development
System - a set
of interacting units - elements that function together to achieve certain goals. Element - a relatively independent structural "unit" system. Parts of the system component, module, subsystem. The system itself can be part of a supersystem.
Process - a set of interrelated units - operations that transform inputs into outputs, some to achieve certain results. Operation - a relatively independent structural "unit" of the process. Part of the process: the task, action, subprocess. The process may be part nadprotsessa.
Слайд 4Basic programming concepts are the algorithm and program
Algorithm - a
finite ordered set of well-defined rules for the solution of
the problem. Solvable problem arises or considered within a specific area. Subject area (ABM) - a set of objects that represent a part of the real, hypothetical or abstract world, and related concepts, and the links between them.
Program - formal description of the algorithm for its implementation on the computer. Because of the presence of other meanings and the meaning of "program" is now using the concept of a computer program.
Слайд 5Programs are collaborating through shared data
Program system (PS) - organized
a set of programs (subsystems), which provides a wide range
of problems a pro.
In a narrow sense, the software (SW) - a set of programs (software package / FP) on data carriers. In the generic sense - a set of programs and data (procedures, rules and documentation software) that make up the computer.
Слайд 6System is more capacious concept than software: it includes also
the environment in which the software operates as such
The most
general concept is the system under consideration. From the point of view of the development system includes computer systems, staff, etc.
From the engineering point of view, the most often use the term "system", sometimes "software", "PS" and "software tool." Therefore, in most of the material presented by the usual reference to be replaced by the PS, a software tool, and (with some conditions) on the system as a whole.
Слайд 7
From an organizational and economic point of view, the most
often use the term "prototype" and "software"
The Programs (PP) -
a software tool, which is a product of industrial production, intended for delivery, transfer, sale to the user. When considering it only as a result of industrial production using the concept of the software product is usually (PI).
Service - work to assist in the operation of the product.
Слайд 8With the solution closely two important concepts - the "project"
and "team"
Prototype - a partial, preliminary or possible implementation solutions.
The prototype is a test or an intermediate result of the development, according to which the solution is evaluated as a whole.
The project - a set of actions of a temporary nature, to obtain specific solutions, are the result - the content. Team - a group of individuals, formed for the project, or part of it. The project is implemented by the teams, and the team is working on projects.
Слайд 9In the project, each participant has a role (or set
of roles). Role - the behavior and responsibility of the
participant.
There are main roles: user - a person who is directly involved in the operation of the product to get the results and / or using these results and the operator - a person who is engaged in the operation of the product, the customer - the person who orders the development of a product and takes it; provider - the person who has developed product, the developer - a person who carries out the development of the product, ie all activities on the development of the project. Often for different developers allocate individual roles - (system) analyst, designer, programmer, tester, etc.
Слайд 10If a particular result is not specified, we usually speak
of the development process.
Development process - a set of inter-related
activities to obtain a result. The development process in this sense represents an abstraction of the project and is virtually synonymous with the approach to software development or systems. This is reflected in the name of some technological approaches.
The product can be considered analogous to a living organism: it has a life cycle (LC), which begins with the "birth" (possibly with a birth plan / idea), and ends with his "death" (disused). The concept of life cycle is extremely useful in the management of the project.
Слайд 11A life cycle of the project
The aim is to solve
the software project. For the project and the corresponding solutions
is also convenient to define a life cycle of the project. Depending on what is included in the solution (software, system, etc.) and what is included in the project (or even only the development and maintenance), allocate the appropriate lifecycle.