Environment Data (D&E - Projects and Releases)
Recording Project Development and Enhancement metrics
You can record metrics data either :
Comparative Benchmarking has demonstrated that the factor that most significantly impacts the productivity achieved by the project team (cost drivers) is the Primary Programming Language used to code the software. Other environmental factors have also been shown to impact productivity. If you are planning to submit your Benchmark data to ISBSG or to benchmark your own data to industry it is important that you complete these fields.
Select from the drop down lists the item which best describes your environment.
Primary Programming Language - The primary language used to create the source code/objects. JAVA, C++, PL/1, Natural, Cobol etc.
Language Level - defines the sophistication of the programming environment in terms of the 'generation' that the language is classified.
- 2GL - Second-generation programming language is a generational way to categorize assembly languages. The term was coined to provide a distinction from higher level third-generation programming languages (3GL) such as COBOL and earlier machine code languages. Second-generation programming languages have the following properties: The code can be read and written by a programmer. To run on a computer it must be converted into a machine readable form, a process called assembly. The language is specific to a particular processor family and environment. Second-generation languages are sometimes used in kernels and device drivers (though C is generally employed for this in modern kernels), but more often find use in extremely intensive processing such as games, video editing, graphic manipulation/rendering.
- 3GL - A third-generation programming language (3GL) is a refinement of a second-generation programming language. The second generation of programming languages brought logical structure to software. The third generation brought refinements to make the languages more programmer-friendly. This includes features like improved support for aggregate data types, and expressing concepts in a way that favours the programmer, not the computer (e.g. no longer needing to state the length of multi-character (string) literals in Fortran). A third generation language improves over a second generation language by having the computer take care of non-essential details, not the programmer. High level language is a synonym for third-generation programming language. First introduced in the late 1950s, Fortran, ALGOL, and COBOL are early examples of this sort of language. Most popular general-purpose languages today, such as C, C++, C#, Java, BASIC and Delphi, are also third-generation languages. Most 3GLs support structured programming.
- 4GL - A fourth-generation programming language (1970s-1990) (abbreviated 4GL) is a programming language or programming environment designed with a specific purpose in mind, such as the development of commercial business software. A number of different types of 4GLs exist:
- Table-driven (codeless) programming, usually running with a runtime framework and libraries. Instead of using code, the developer defines his logic by selecting an operation in a pre-defined list of memory or data table manipulation commands.
- Report-generator programming languages take a description of the data format and the report to generate and from that they either generate the required report directly or they generate a program to generate the report.
- Forms generators manage online interactions with the application system users or generate programs to do so.
- Data management 4GLs such as SAS, SPSS and Stata provide sophisticated coding commands for data manipulation, file reshaping, case selection and data documentation in the preparation of data for statistical analysis and reporting
Type of Server - The services provided by the host/server computer(s) to the software application or product.
Stakeholders - Project stakeholders are those entities within or outside an organization which sponsor a project, or have an interest or a gain upon a successful completion of a project. They may have a positive or negative influence in the project completion. Stakeholders are anyone who has an interest in the project and provide feedback to influence its outcome. Project stakeholders are individuals and organizations that are actively involved in the project, or whose interests may be affected as a result of project execution or project completion. The project management team must identify the stakeholders, determine their requirements and expectations, and to the extent possible, manage their influence in relation to the requirements to ensure a successful project. The following are examples of project stakeholders: Upper management, Project customer, Resource Managers, Line Managers, Product user group.
Percent not project work - People need to work at a range of non-project activities such as training, administration, leave and marketing. Very rarely are 100% of work hours devoted to project work over the whole duration of a project.