Слайд 1Lecture 5
Software Engineering
Слайд 2technological approach
Particular technology (technological approach) contains a specific set of
processes, and used their knowledge, methods and tools.
In a narrow
sense, technology is a certain technological approach. Technology based on the concept of the life cycle.
Слайд 3The life cycle of the software (software life cycle)
- The
whole period of its development and operation, from the moment
of conception (ideas) to the cessation of all kinds of use.
In general, the life cycle model is defined and described in the form of technology development - technological approach.
LC model - the structure that determines the sequence of execution of processes and their relationship throughout life cycle. Mention LC usually allocated, the specific model lifecycle.
Слайд 4
Разрешить написание латиницей
Software Engineering
Software Engineering (process approach) - a defined
set of processes, including their detailed content and distribution by
stage, and role responsibilities of project participants at all stages of software life cycle model chosen.
Technology often determines the model. Usually it is based on the methods of the chosen methodology, and recommends practices to maximize effective use of this technology and its model life cycle.
Technology conveniently characterized in two dimensions - vertical (processes) and horizontal (stage).
Слайд 5action
The connecting notion between processes and stages is "action."
Action (tzh.
work, activity) - part of the project performed by individual
artist or group of performers.
In fact, the processes and stages are a certain set of actions: on the basis of data conversion steps are combined into processes, and time-based features and / or gets the results - in the stage.
Слайд 6process
Process - a set of inter-related activities of the project,
which convert some input into the weekend.
The relationship of
action lies in their sequence, complete in terms of content, time, and logical sequence. The process consists of a set of actions, and every action - from a set of tasks. Further detail leads to the consideration of individual operations. The problem (tzh. task) - the planned action item: the task defined / in the project plan and its resources can be assigned to perform.
Thus, the hierarchy of concepts related to the process is as follows:
Processes Actions Tasks Operations.
Слайд 7discipline
In some approaches, instead of the term "process" using the
concept of "discipline."
Discipline - the process when considered together
with its accompanying artifacts and roles.
From the point of view of management discipline is a work flow (literally workflow) associated with a working product - an artifact made by Members in a given role.
In addition, a number of studies also introduced the concept of "procedure."
Procedure - a step by step description of the direction of tasks to perform and complete a specific action.
In this case the description of the process is a documented definition of action, in the form of formalized procedures.
Слайд 8stage
Stage - the action group project, some limited time frame,
and often ends with the release of the result produced
by a specified requirements.
Stage stand on the grounds of reasonable and rational management of the project.
Stages are often composed of steps (tzh. step), which are usually iterative in nature and therefore are presented as iterations.
A number of approaches under combined into larger time frame - the phase in this case the same steps are iterative in nature.
Thus, the hierarchy of concepts related to the stage, as follows:
Phase Stages Stages.
Слайд 9Obtain the following description of measurement technology
The vertical dimension represents
the static aspects of the processes and operates with such
concepts as processes, activities, tasks, and operations.
The horizontal dimension represents time, reflects the dynamic aspects of the process and operates with such concepts as phases, stages and phases.
Слайд 10Methodology and Practice
Technique (literally appliances) - set concretized development methods
within a given methodology applied in one or more of
the relevant set of process life cycle.
Practice - this is a definite recommendation for the implementation of actions for which the results are verifiable, but not transferable as a material for other processes. The sequence of practices and workflow within the practice is not set.
Practices are not tied to the project (if it is said that they do not "copy").
Thus, the technology is determined by the specific combination of processes and stages, focused on different classes of software and features of the project participants and augmented methods and practices.
Слайд 11design management
Design management is to organize the project in relation
to the limits.
Determined by a system of constraints and priorities
should take into account the requirements of stakeholders.
The main constraints include:
content (of the project),
time (performance)
Price (project).
It should be noted and the following restrictions:
resources (human and financial)
quality (acceptable to the project),
efficiency (the project).
As a result, taking into account the constraints we obtain a polygon or polyhedron constraints.
In practice three constraints are fixed. While talking about the triangle constraints.
Слайд 12management problem
The choice of the technological approach that is associated
with a set of processes and stages, a combination of
techniques and practices, and the level of formalization of the development, which address the triangle constraints.
Therefore the problem of control is to find the balance within the constraints of the project.
Слайд 13Effective management of software development
Effective management of software development requires
certain formalizations of the work and its results. Produced a
result - some real result produced by the project.
There are the following produced results:
Internal - for use by the project team
and external - for use by other interested parties.
Слайд 14artifact
Formalization of the result is produced by a certain artifact.
Examples:
models and documents (plans, specifications, diagrams, code, etc.).
Artifact - the
result of the formal product, create, modify, or use it in the performance of the project.
Artifact defines the area of responsibility: for his creation meet specific artist or group.
In a separate problem (and taymboksa) so the result is a work product, but in a number of approaches is synonymous with the artifact.
Слайд 15baseline
To formalize changes to the result produced by the notion
of "baseline."
Base Line - officially accepted version of the produced
results, designated and fixed at a particular time LC. Changes made to the baseline must be pre-approved, that is, must go through a special formalized action. For the entire project baseline is usually translated as a baseline - the original project plan with the approved changes.
Used for the analysis of project milestones and landmarks.
Control point - the event in order to verify the life cycle assessment and the remaining work on the project.
Time points for the control points are the boundaries often stages.
Milestone - the event life cycle to indicate the completion of the produced results, or type them. Milestones are often used as reference points.
Слайд 16iteration
Due to the iterative execution of works obtained results have
gradually improved to target results dictated by the specifications, which
are also subject to change.
Iteration - limited in time to repeat part of the project. Iteration can be a development cycle or part of it, which is determined by the duration and life cycle model. In this case, the iteration of the development cycle called makroiteratsiey or simply cycle iteration stage - just iterate and iteration step - mikroiteratsiey.
For managed individual tasks used taymboksy.
Taymboks (lit. time box) - a small amount of time to perform a specific task and the work of its results.
Taymboks characterized rigidly defined time frame. The framework must be met, even if that issue is not quite complete results. Otherwise, the task is considered failed and must either reject it, or schedule it again.
Слайд 17Thus, the description of the measurement technology is corrected as
follows:
The vertical dimension also operates with such concepts as:
produced results
(artifacts, work products
and Artists (roles and responsibilities).
The horizontal dimension also operates with such concepts as:
checkpoints and milestones
iteration
taymboksy.
But these concepts can be regarded as a characteristic of the new, third dimension. This dimension is related to the formalization required to manage the project.
Слайд 18There are two basic sets of processes
Classic set - a
set of key processes, developed historically from practical experience of
software development.
Classic set includes nine processes:
1. research;
2. management;
3. analysis;
4. design;
5. encoding;
6. testing;
7. Entry into force;
8. support;
9. Decommissioning.
Processes classic set is actually a subset of the standard, speaking there as a process or action.
Standard set - a set of processes of ISO / IEC 12207:1999 «Information Technology - Software Life Cycle Processes."
The standard set includes three groups of processes:
basic,
auxiliary
organizational processes.
Слайд 19There are two main types of process steps of forming
Poprotsessnoe
formation stages - selection stages, reflecting the process names (or
individual actions), most of the time, which takes place in this stage.
Per phase formation stages - stages in the association phase, reflecting the large time intervals.
Слайд 20Poprotsessnoe formation stages
Poprotsessnoe formation stages are commonly used for classical
processes (or their sub-or superset).
In the approach to this classification
usually isolated
Nine stages:
1. Research ideas;
2. planning;
3. Requirements analysis;
4. design;
5. encoding;
6. Testing and debugging;
7. Entry into force;
8. Operation and maintenance;
9. Decommissioning.
Слайд 21Per phase formation stages
Per phase formation stages are commonly used
for standard processes (or their sub-or superset).
Most approaches to this
classification are 4 main phases:
1. Start;
2. middle;
3. culmination;
4. Transition.
Several approaches allocate 2 additional phases:
5. work;
6. The end.
Слайд 22Characteristics of ongoing projects
Classification approach is closely related to the
characteristics of the ongoing projects.
For each of the grounds of
the classification of projects include many projects that will be given are boundary values.
Scale, determined by the number of performers and the length (execution time) of the project, allocate five project categories
Слайд 23Five project categories
Категория Число исполнителей Протяжённость проекта
Мелкий
от 1 до 3
от 1 часа до 2 месяцев
Малый от 3 до 10 от 2 до 6 месяцев
Средний от 10 до 30 от 6 месяцев до 1 года
Крупный от 30 до 100 от 1 года до 2 лет
Гигантский от 100 до 300 и более от 2 до 6 лет и более
Слайд 24Now allocate two classes of approaches
Now allocate two classes of
approaches.
Strict (tzh. heavy, rigid) approaches focus primarily on the application
in medium, large and giant projects with a fixed amount of work. Therefore, the main requirement for such projects - predictability.
Flexible (tzh. lungs, live) approaches focus primarily on the application in micro, small or medium-sized projects in cases of unclear or changing system requirements. Therefore, the main requirement for such projects - direct participation of the customer in the project. For most flexible approach is an important requirement of adaptability.
Within classes of approaches conventionally separated group approaches with a number of principles that are common to these approaches.
The class of rigorous approaches include:
cascading,
frame,
genetic,
formal approaches.
to the class of flexible:
evolutionary
adaptive approaches.