Function point analysis is a method of estimating the size of a software application based on the user view rather than lines of code. It involves identifying and classifying functional components such as internal logical files, external interface files, inputs, outputs, and inquiries. Each component is assigned a complexity and weight to calculate the total functional size in function points. The size can then be adjusted based on 14 general system characteristics to determine the final adjusted size. The document provides details on the history, vocabulary, types of data and transactions, counting process, and complexity determination involved in function point analysis.
Software Project Management (monitoring and control)IsrarDewan
Monitoring and Controlling are processes needed to track, review, and regulate the progress and performance of the project. It also identifies any areas where changes to the project management method are required and initiates the required changes.
Software Project Management (monitoring and control)IsrarDewan
Monitoring and Controlling are processes needed to track, review, and regulate the progress and performance of the project. It also identifies any areas where changes to the project management method are required and initiates the required changes.
Software Project Management | An Overview of the Software Project ManagementAhsan Rahim
Management is the process of getting things done through others, it is the process of coordinating people & other resources to achieve the goals of the organization. A project is a set of related tasks that are coordinated to achieve a specific objective in a given time limit. A project is well-defined task, which is a collection of several operations done in order to achieve a goal. Software is the program & all associated documentation & configuration data which is needed to make these programs operate correctly.
A Software Project is the complete procedure of software development from requirement gathering to testing & maintenance, carried out according to the execution methodologies, in a specified period of time to achieve intended software product.
The objective is to explain how a software design may be represented as a set of interacting objects that manage their own state and operations and to introduce various models that describe an object-oriented design.
What is Quality ||
Software Quality Metrics ||
Types of Software Quality Metrics ||
Three groups of Software Quality Metrics ||
Customer Satisfaction Metrics ||
Tools used for Quality Metrics/Measurements ||
PERT and CPM ||
Activities During Software Project Management, Process For Successful Projects, categories of functional units, Counting function points, Computing function points
What is Software project management?? , What is a Project?, What is a Product?, What is Project Management?, What is Software Project Life Cycle?, What is a Product Life Cycle?, Software Project, Software Triple Constraints, Software Project Manager, Project Planning,
SDLC is the acronym of Software Development Life Cycle. It is also called as Software development process. The software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process.
This presentation contains the fundamentals of Function point Analysis. There are plenty of examples included in this presentation and one can learn the concepts using these examples.
Software Project Management | An Overview of the Software Project ManagementAhsan Rahim
Management is the process of getting things done through others, it is the process of coordinating people & other resources to achieve the goals of the organization. A project is a set of related tasks that are coordinated to achieve a specific objective in a given time limit. A project is well-defined task, which is a collection of several operations done in order to achieve a goal. Software is the program & all associated documentation & configuration data which is needed to make these programs operate correctly.
A Software Project is the complete procedure of software development from requirement gathering to testing & maintenance, carried out according to the execution methodologies, in a specified period of time to achieve intended software product.
The objective is to explain how a software design may be represented as a set of interacting objects that manage their own state and operations and to introduce various models that describe an object-oriented design.
What is Quality ||
Software Quality Metrics ||
Types of Software Quality Metrics ||
Three groups of Software Quality Metrics ||
Customer Satisfaction Metrics ||
Tools used for Quality Metrics/Measurements ||
PERT and CPM ||
Activities During Software Project Management, Process For Successful Projects, categories of functional units, Counting function points, Computing function points
What is Software project management?? , What is a Project?, What is a Product?, What is Project Management?, What is Software Project Life Cycle?, What is a Product Life Cycle?, Software Project, Software Triple Constraints, Software Project Manager, Project Planning,
SDLC is the acronym of Software Development Life Cycle. It is also called as Software development process. The software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process.
This presentation contains the fundamentals of Function point Analysis. There are plenty of examples included in this presentation and one can learn the concepts using these examples.
Function point Analysis: An idiots friendly introductionArun
Functional point analysis is one of the most accurate and standardized method for sizing large software projects. This guide walks you through the entire technique with a very easy to understand example
Projects and project management processes vary from industry to industry; however, these are more traditional elements of a project. The overarching goal is typically to offer a product, change a process or to solve a problem in order to benefit the organization.
A contracting and project management firm, The Dalton Company has been involved with significant projects for nonprofits, including Toronto’s Wychwood Barns. Using ArtsBuild’s online guide to capital projects PLAN IT | BUILD IT, The Dalton Company discusses the planning and decision-making needed to deliver projects on budget and in time.
COEPD - Center of Excellence for Professional Development is a primarily a Business Analyst Training Institute in the IT industry of India head quartered at Hyderabad. COEPD is expert in Business Analyst Training in Hyderabad, Chennai, Pune , Mumbai & Vizag. We offer Business Analyst Training with affordable prices that fit your needs.
COEPD conducts 4-day workshops throughout the year for all participants in various locations i.e. Hyderabad, Pune. The workshops are also conducted on Saturdays and Sundays for the convenience of working professionals.
For More Details Please Contact us:
Visit at http://www.coepd.com or http://www.facebook.com/BusinessAnalystTraining
Center of Excellence for Professional Development
3rd Floor, Sahithi Arcade, S R Nagar,
Hyderabad 500 038, India.
Ph# +91 9000155700,
helpdesk@coepd.com
What exactly is the role of a project manager? There are lot of responsibilities that a project manager has to fulfill. Here is a high level overview of the expectations from the project manager.
Function Point Analysis & Cocomo. Two main estimation methods for structured and object oriented methodology estimations. Cocomo is widely used in estimating where Rational Unified Process is followed.
How can Oracle Forms (or other legacy) applications be modernized to fit in a contemporary IT architecture? Trends, concepts and technologies are discussed.
Михаил Подурец. Почему Agile не работает (на самом деле нет). Agiledays2017LuxoftAgilePractice
Каждый уважающий себя Agile-coach рано или поздно должен высказаться на эту тему:
— АААА! Оно у нас не работает
— Ваш Скрам у нас невозможен
— Как вы предлагаете делать нам интеграционное тестирование внутри спринта, если оно занимает месяц!? О_о
Спокойно! На докладе мы разберем, почему оно не работает, и как на самом деле оно должно работать.
Презентация с доклада на AgileDays 2017. Скоро будет видео
Что такое групповая динамика и зачем про нее знать фасилитатору?LuxoftAgilePractice
Бывала ли у вас такая ситуация с командой, когда вы не понимали, чем вызван спад ее производительности или возросшее количество внутрикомандных конфликтов? На прошлой неделе еще все дружно работали, а на этой начался какой-то разлад и шатание.
Одной из причин такой метаморфозы может быть переход команды из стадии формирования в стадию штормления. Как это определить и что с этим делать, мы рассмотрим на вебинаре на примере модели командной динамики Брюса Такмана.
Модель Такмана - это, конечно, не единственный способ описания процессов, которые происходят с командой, компанией или социумом в целом. Для рассмотрения более глубокий, экзистенциальных потоков изменений можно использовать модель Спиральной Динамики. Эта модель может ответить не только на философские, но и на такие утилитарные вопросы как:
В чем причина бюрократии на проекте или в компании?
Каким сотрудникам будет сложно работать в Agile среде?
Почему участники одной команды могут действовать против друг друга и напоминать коллектив из басни “лебедь, рак и щука”?
Каким руководителям сложно увольнять сотрудникам и проводить дисциплинарные беседы с подчиненными?
Каким командам подойдет и принесет пользу Скрам фреймворк.
На вебинаре мы детально, но быстро, разберем две вышеперечисленные модели и еще один подход, который помогает последовательно сформировать команду из группы специалистов.
Запись прошлых вебинаров на тему фасилитации:
https://youtu.be/VqarmllTKD4 Фасилитируем командное обсуждение и принятие решений
https://youtu.be/7x3uHaFqe1I Майндсет и поведение Agile фасилитатора
https://youtu.be/ykx54Kx6wOA Фасилитируем встречи, повышающие уровень сотрудничества в команде
https://youtu.be/mjIu06mvO4A Вебинар От Agile фасилитатора до Agile коуча
Презентация к вебинару - https://youtu.be/VqarmllTKD4
Вебинар из серии вебинаров ICAgile Agile Team Facilitation, которая состоит из 7 вебинаров о фасилитации Agile команд. Будем рассматривать техники, которые помогают командам проводить совместные обсуждение и принимать решения.
О чем узнаете на вебинаре?
2 техники для “обсуждения-дискусcии", они обе хорошо подойдут как для малых (4-5 человек) так и для больших (12-14 человек) команд. Плюсы и минусы этих техник, особенности и возможности их трансформации под ваши рабочие условия.
2 техники для “обсуждения-обратной связи". Одна из них довольно распространенная и она мне не очень нравится своей банальностью, а вторую вы вряд ли знаете, она интереснее, но и сложнее в применении.
1 техника для “обсуждения-анализа”, называется “Декартовы Координаты”, часто применяется в индивидуальном коучинге, но в 99% упускается одна интересная деталь при ее использовании, на вебинаре я про нее расскажу.
2 техники для голосования, про точко-голосование вы все, конечно, уже в курсе, я расскажу еще две простые техники, может, они вам тоже знакомы. Я бы хотела больше остановиться даже не на самих техниках, а на том, как можно манипулировать будущими результатами голосования еще до самого голосования.
Продолжая тему манипуляций, мы рассмотрим валидность мажоритарного способа принятия решений и познакомимся с другими, возможно, более подходящими для ваших команд, подходами.
Запись прошлых вебинаров:
https://youtu.be/7x3uHaFqe1I
https://youtu.be/ykx54Kx6wOA
https://youtu.be/mjIu06mvO4A
Фасилитируем встречи, повышающие уровень сотрудничества в командеLuxoftAgilePractice
Третий вебинар из серии вебинаров ICAgile Agile Team Facilitation, которая состоит из 7 вебинаров о фасилитации Agile команд. Будем рассматривать техники и инструменты, которые повышают уровень сотрудничества в команде. Поговорим про особенности их применения, случаи, когда они работают, а когда нет.
Сопротивление изменениям. Как помочь команде пережить процессную трансформацию.LuxoftAgilePractice
В своей работе Agile коуча я часто сталкиваюсь не с тем, что какая-то практика не работает или какой-то фреймворк не приносит пользы, а с тем, что команда не хочет пробовать ничего нового, особенно если "особых проблем на проекте нет". Если нет проблем - стоит искать возможности. Мир (и особенно IT область) постоянно меняется. "Чтобы оставаться на месте, нужно бежать, а чтобы двигаться немного вперед, нужно бежать в два раза быстрее" Льюис Кэрролл.
В своем докладе я рассмотрю коучинговые и фасилитационные подходы, которые помогает мне уговорить/убедить команду попробовать новые практики и которые также снижают травматичность перемен для участников команд.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
Cyaniclab : Software Development Agency Portfolio.pdfCyanic lab
CyanicLab, an offshore custom software development company based in Sweden,India, Finland, is your go-to partner for startup development and innovative web design solutions. Our expert team specializes in crafting cutting-edge software tailored to meet the unique needs of startups and established enterprises alike. From conceptualization to execution, we offer comprehensive services including web and mobile app development, UI/UX design, and ongoing software maintenance. Ready to elevate your business? Contact CyanicLab today and let us propel your vision to success with our top-notch IT solutions.
Understanding Globus Data Transfers with NetSageGlobus
NetSage is an open privacy-aware network measurement, analysis, and visualization service designed to help end-users visualize and reason about large data transfers. NetSage traditionally has used a combination of passive measurements, including SNMP and flow data, as well as active measurements, mainly perfSONAR, to provide longitudinal network performance data visualization. It has been deployed by dozens of networks world wide, and is supported domestically by the Engagement and Performance Operations Center (EPOC), NSF #2328479. We have recently expanded the NetSage data sources to include logs for Globus data transfers, following the same privacy-preserving approach as for Flow data. Using the logs for the Texas Advanced Computing Center (TACC) as an example, this talk will walk through several different example use cases that NetSage can answer, including: Who is using Globus to share data with my institution, and what kind of performance are they able to achieve? How many transfers has Globus supported for us? Which sites are we sharing the most data with, and how is that changing over time? How is my site using Globus to move data internally, and what kind of performance do we see for those transfers? What percentage of data transfers at my institution used Globus, and how did the overall data transfer performance compare to the Globus users?
Developing Distributed High-performance Computing Capabilities of an Open Sci...Globus
COVID-19 had an unprecedented impact on scientific collaboration. The pandemic and its broad response from the scientific community has forged new relationships among public health practitioners, mathematical modelers, and scientific computing specialists, while revealing critical gaps in exploiting advanced computing systems to support urgent decision making. Informed by our team’s work in applying high-performance computing in support of public health decision makers during the COVID-19 pandemic, we present how Globus technologies are enabling the development of an open science platform for robust epidemic analysis, with the goal of collaborative, secure, distributed, on-demand, and fast time-to-solution analyses to support public health.
Listen to the keynote address and hear about the latest developments from Rachana Ananthakrishnan and Ian Foster who review the updates to the Globus Platform and Service, and the relevance of Globus to the scientific community as an automation platform to accelerate scientific discovery.
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Globus
The U.S. Geological Survey (USGS) has made substantial investments in meeting evolving scientific, technical, and policy driven demands on storing, managing, and delivering data. As these demands continue to grow in complexity and scale, the USGS must continue to explore innovative solutions to improve its management, curation, sharing, delivering, and preservation approaches for large-scale research data. Supporting these needs, the USGS has partnered with the University of Chicago-Globus to research and develop advanced repository components and workflows leveraging its current investment in Globus. The primary outcome of this partnership includes the development of a prototype enterprise repository, driven by USGS Data Release requirements, through exploration and implementation of the entire suite of the Globus platform offerings, including Globus Flow, Globus Auth, Globus Transfer, and Globus Search. This presentation will provide insights into this research partnership, introduce the unique requirements and challenges being addressed and provide relevant project progress.
top nidhi software solution freedownloadvrstrong314
This presentation emphasizes the importance of data security and legal compliance for Nidhi companies in India. It highlights how online Nidhi software solutions, like Vector Nidhi Software, offer advanced features tailored to these needs. Key aspects include encryption, access controls, and audit trails to ensure data security. The software complies with regulatory guidelines from the MCA and RBI and adheres to Nidhi Rules, 2014. With customizable, user-friendly interfaces and real-time features, these Nidhi software solutions enhance efficiency, support growth, and provide exceptional member services. The presentation concludes with contact information for further inquiries.
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
In software engineering, the right architecture is essential for robust, scalable platforms. Wix has undergone a pivotal shift from event sourcing to a CRUD-based model for its microservices. This talk will chart the course of this pivotal journey.
Event sourcing, which records state changes as immutable events, provided robust auditing and "time travel" debugging for Wix Stores' microservices. Despite its benefits, the complexity it introduced in state management slowed development. Wix responded by adopting a simpler, unified CRUD model. This talk will explore the challenges of event sourcing and the advantages of Wix's new "CRUD on steroids" approach, which streamlines API integration and domain event management while preserving data integrity and system resilience.
Participants will gain valuable insights into Wix's strategies for ensuring atomicity in database updates and event production, as well as caching, materialization, and performance optimization techniques within a distributed system.
Join us to discover how Wix has mastered the art of balancing simplicity and extensibility, and learn how the re-adoption of the modest CRUD has turbocharged their development velocity, resilience, and scalability in a high-growth environment.
2. www.luxoft.com
Introduction
Svetlana Mukhina
ICAgile ICP, ICP-ATF, ICP-BVA, PSM I, CSPO
Agile and Career Coach at Luxoft Agile Practice
Experience: 13+ years in IT, Project and department
management, Computer Linguistics, Technical Writing,
Quality Assurance
Interests: Project management, Agile transformation, Career
and performance coaching, Psychology
Hobbies: Horse riding, music, poker, travelling
https://www.linkedin.com/in/svetlanamukhina
https://www.facebook.com/Svetlana.Mukhina8
4. www.luxoft.com
Size
scale of task
in PF/SP/etc
Effort
man-hour
Duration
of project
Change
RFC
People
project team
Defects
quality
Critical
Resources
Estimating the Project Adopted from David Consulting Group
5. www.luxoft.com
History
• Function Point Analysis was developed first by Allan J. Albrecht in the mid 1970s
• The method was first published in 1979, then later in 1983
• In 1986 the International Function Point User Group (IFPUG) was set up
• Since 1987 membership in IFPUG has grown from 100 members to 600 members in 1997.
• In less than six years conference attendance has grown from 125 in 1988 to over 300 by 1997.
• Examination of IFPUG clearly indicates that the majority of its is members are from North
America
• There are numerous affiliate organizations of IFPUG. There are affiliate organizations in Italy,
France, Germany, Austria, India, The Netherlands, Australia, Japan, and several other countries.
from David Consulting Group
6. www.luxoft.com
Vocabulary – Main Terms
• is a unit of measure for quantifying software deliverable
(functionality) based upon the user view.Function Point
• is any person or thing that communicates or interacts with the
software at any timeUser
• is the Functional User Requirements as perceived by the userUser View
• are a subset of user requirements, that describe what the
software shall do (functions), in terms of tasks and services
Functional user
requirements
from David Consulting Group
7. www.luxoft.com
Vocabulary – Functional and Non-Functional Requirements
Functional (Include)
• Data Transfer (Input customer data, send control signal, send transactions
• from one system to another)
• Data Transformation (Calculate bank interest; derive average temperature; use billing data to produce invoice totals)
• Data Storage (Store customer order; record temperature over time; store control parameters to drive data)
• Data Retrieval (List current employees; retrieve satellite position; display a report of employee dependents)
Non-Functional (Exclude)
• Quality Constraints (Usability, Reliability, Efficiency, Portability)
• Organizational Constraints (locations for operations, target hardware, compliance to standards)
• Environmental Constraints (interoperability, security, privacy, safety)
• Implementation constraints (development language, delivery schedule)
from David Consulting Group
8. www.luxoft.com
• Function Points can be used to size software
applications accurately.
• FP can be counted by different people, at different
times, to obtain the same measure within a
reasonable margin of error
• FP can be estimated by proxy
• FP is easily understood by non-technical users
• FP can be used to determine whether a tool, a
language, an environment, is more productive when
compared with others
• Low risk of "inflation” comparing to lines of code or
story points methods
• LOC measures are not useful during early project
phases where estimating the number of lines of
code that will be delivered is challenging.
• FP can be derived from requirements
• Function points are not a very good measure when sizing
maintenance efforts (fixing problems) or when trying to
understand performance issues
• When maintenance programming is done by one or two
individuals, individual skill sets become a major factor when
measuring this type of work
• Development team don’t take part in estimation
Advantages and Disadvantages of Function Point Analysis
Adopted from David Consulting Group
11. www.luxoft.com
Process of Function Point Estimation
Gather
available
documentation
Determine the
counting
scope,
boundaries,
functional user
requirements
Identify and
classify the
base functional
components
Calculate the
functional size
Document the
Function
Points
Report the
result
Measure the data functions
Internal Groupings of data called Internal Logical Files (ILF)
External Groupings of data or External Interface Files (EIF)
Measure the transactional functions
External Inputs (EI)
External Outputs (EO)
External Inquires (EQ)
Each function is assigned a functional complexity (L-A-H) and a
weight (FPs
Adopted from David Consulting Group
12. www.luxoft.com
Application Boundary
An application boundary is a conceptual interface between the software under study and its users.
• Scope of a project could include multiple applications.
• A functional size would be calculated for each affected application, in perspective to its boundary,
thereby producing its own count
• All affected application counts would be compiled to produce the total project count.
Adopted from David Consulting Group
13. www.luxoft.com
Types of Count
We count
• Installed application: Baseline (or
application) count
• Development project: New
system or subsystem
• Enhancement project: Add,
change or delete to present
system
We don’t count
• Corrective Maintenance –
Software maintenance performed
to correct faults in hardware or
software
• Perfective Maintenance –
Software maintenance performed
to improve the performance,
maintainability, or other attributes
of a computer program
• Non-functional requirements
from David Consulting Group
14. www.luxoft.com
Types of Data – Overview
Logical
View
Functionality
(ability to)
Logically
grouped stores
of data (data in
a form)
Elementary
process
(complete flow,
e.g. wizard)
Physical
View
Lines of code
Databases or
tables
Physical
transactions
(screens)
VS
FunctionPointsLookatLogicalView
Adopted from David Consulting Group
15. www.luxoft.com
Types of Data - Details
.
We count –
Business Data
•Reflects information needed to be stored
and retrieved by functional area addressed
by the application.
•Mandatory for the operation of the user’s
functional area
•User identifiable and maintainable
•Stores the user’s Core User Data to support
business transactions
•Very dynamic, business operations cause it
to be regularly referenced, added to,
changed, deleted
•Typically has key field and many attributes
•E.g Customer Data
We count –
Reference Data
•Stored to support business rules for the
maintenance of the business data.
•Mandatory for the operation of the user’s
functional area
•User identifiable and user maintainable
•Stores data to support core user activities
•Less dynamic – occasionally changes in
response to changes in the functional areas’
environment, external functional processes
and/or business rules
•Transactions processing business data
often use reference data
•Typically has key fields and few attributes
•E.g Policy information (Types and terms
of policies)
We don’t count –
Code Data
•Code data provides a list of valid value
values that a descriptive attribute might
have.
•Mandatory to the functional area, but
optionally stored as a data file to
standardize and facilitate business activities
and business transactions
•Not usually identified as part of the
functional requirements; it is usually
identified as part of design to meet technical
requirements
•Sometimes user maintainable, but
essentially static – only changes in response
to changes in the way that the business
operates
•Business transactions access Code Data to
improve ease of data entry, improve data
consistency, ensure data integrity, etc.
•Can be user recognizable as a group or
using the same logic
•Generally consists of a key field and one or
two attributes only
•Typically has a stable number of records
•Examples: Payment Type Code, Payment
Description
from David Consulting Group
16. www.luxoft.com
Internal Logical Files and External Interface Files
Application
Internal Logical File (ILF)
Data which is resides within the
application boundary and which is
maintained (added, changed, deleted,
updated) by the application
External Interface File (EIF) is a user
recognizable group of logically related data
or control information which is referenced by
the application being measured, but
maintained within the boundary of another
application. It is identified as an ILF in
another application(s)
Don’t count as an ILF or EIF:
• Files introduced because of technology or technical requirements
• Index files, Join/Merge Tables
• Prototypes, or files built but not used in application
• Temporary data files
• Copybooks, Work files, Sort files
• Separate physical entities if they are logically one data group
Adopted from David Consulting Group
17. www.luxoft.com
Exercise #1 – Counting Radio Alarm Clock
Inputs (EIs)
• Set time
• Set alarm
• Set type of alarm (radio, buzz) Set radio station
• Set volume of radio
• Set am/fm
• Set Snooze
• On/Off alarm
Outputs (EOs/EQs)
• Alarm
• Sound(Music/ Radio/Buzzer)
• Display Time
Internal Data Stores (ILFs)
• Time Data (Alarm Data/Time Data)
• Radio Data
External Data Sources (EIFs)
• Radio Frequency
from David Consulting Group
18. www.luxoft.com
Determine The Complexity and Weight
The number of ILFs, EIFs and their relative functional complexity determine the contribution of the data
functions to the functional size.
Each ILF and EIF will have an individual contribution based upon its functional complexity, to the total
number of function points for data function contribution to the project functional size.
Assign each identified ILF and EIF a functional complexity based upon the number of data element types
(DETs) and record element types (RETs) associated with the ILF or EIF.
Application
External Interface File (EIF)
RETs
DETs
DETs
DETs
Internal Logical File (ILF)
RET - A record element type (RET) is a
user recognizable subgroup of data
elements within an ILF or EIF
DET is a unique user recognizable,
non-repeated attribute
from David Consulting Group
19. www.luxoft.com
Type Low Avg High Total
EI _ X 3 + _ X 4 + _X6 =
EO _ X 4 + _ X 5 + _X7 =
EQ _ X 3 + _ X 4 + _X6 =
ILF _ X 7 + _ X 10 + _X15 =
EIF _ X 5 + _ X 7 + _X6 =
Function Point Counting Weights
20. www.luxoft.com
RETs 1-19
DETs
20-50
DETs
51+
DETs
1 Low Low Avg
2-5 Low Avg High
6+ Avg High High
ILF and EIF Complexity Matrix
EI Complexity Matrix
FTRs 1-4
DETs
5-15
DETs
16+
DETs
0-1 Low Low Avg
2 Low Avg High
3+ Avg High High
EO and EQ* Complexity Matrix
FTRs 1-5
DETs
6-19
DETs
20+
DETs
0-1 Low Low Avg
2-3 Low Avg High
4+ Avg High High
23. www.luxoft.com
Transactional Functions - Description
A transactional function is an elementary process that provides functionality to the user to process data
and is one of the following:
External Input (EI) – an elementary process that processes data or control information sent from outside
the boundary
- Words that suggest EIs: Add, Make Inactive, Allocate, Modify, Assign, Record, Associate, Remove, Change,
Reset, Create, Delete, Import, Reverse, Set, Undo, Update, Upload, Withdraw;
External Inquiry (EQ) – is an elementary process that sends data or control information outside the
boundary (using data retrieval only)
- Words That Suggest EQs: Browse Display Enquire Extract Inquire List Pick List View
External Output (EO) – is an elementary process that sends data or control information outside the
boundary and includes additional processing beyond that of an external inquiry.
- Words That Suggest EOs: Adjust Export Generate Notify Print Report Summary
Adopted from David Consulting Group
25. www.luxoft.com
Transactional Functions
Application
External Interface File
(EIF)
RETs
DETs
DETs
DETs
Internal Logical File (ILF)
RET - A record element type (RET) is a
user recognizable subgroup of data
elements within an ILF or EIF
DET is a unique user recognizable,
non-repeated attribute
User
EI = External Input
EO = External Output
EQ = External Inquiry
EI
EO
EQ
Adopted from David Consulting Group
26. www.luxoft.com
Exercise #3 – Counting Application Primary Processes and Data
Adopted from David Consulting Group
27. www.luxoft.com
Exercise #3 – Results
Description ILF/EIF/EI/EO/EQ FTRs DETs
Add EI 1 6
Change EI 1 6
Delete EI 1 5
Student Data ILF 1 4
16 FPs
Adopted from David Consulting Group
28. www.luxoft.com
General Systems Characteristics (GSCs)
GSCs are non-functional (technical) factors that can be applied to the unadjusted size measure to get an
adjusted functional size measure. The intent is to capture the effect of each driver on the development life
cycle environment. The value adjustment factor looks at 14 general system characteristics:
Data
Communication
Distributed
Data or
Processing
Performance
Objectives
Heavily Used
Configuration
Transaction
Rate
On-Line Data
Entry
End-User
Efficiency
On-Line Update
Complex
Processing
Reusability
Conversion &
Install Ease
Operational
Ease
Multiple-Site
Use
Facilitate
Change
Adopted from David Consulting Group
29. www.luxoft.com
Determine Value Adjustment Factor
Evaluate each of the 14
GSCs on a scale from 0 -5
to determine the degree of
influence (DI).
Calculate the degrees of
influence to produce total
degree of influence (TDI).
Insert the TDI into the
formula to produce the VAF
Formula: VAF=(TDI*0.01)+0.65
30. www.luxoft.com
Example of VAF Usage
If the functional project count was 100 fps, and the VAF was 1.1, then the adjusted count would be 110 fps.
Adjusted Function Points = Functional (Unadjusted) FP x VAF
No system is rated at 0 on all GSCs; no system is rated 5 on all
GSCs; but if they were:
• All Zeroes VAF = (0*.01) +.65 = .65 All Fives VAF =
(70*.01)+.65 = 1.35
Therefore, the VAF ranges from .65 - 1.35. In effect, using the
VAF can adjust the unadjusted (functional) size by + or - 35%.
Adopted from David Consulting Group
31. www.luxoft.com
Check List (process) for Counting Function Points
Gather available documentation
Determine the counting scope, boundaries and identify functional user requirements
Identify and classify the base functional components
Measure the data functions
Internal Groupings of data called Internal Logical Files (ILF)
External Groupings of data or External Interface Files (EIF)
Measure the transactional functions
External Inputs (EI)
External Outputs (EO)
External Inquires (EQ)
Each function is assigned a functional complexity (L-A-H) and a weight (FPs)
Calculate the functional size
Add VAF (optional)
33. www.luxoft.com
Next Steps and Recommended Materials
Function Point Analysis Quiz and additional materials (for Luxoft Employees only) will be provided
in follow-up email
http://www.softwarevalue.com/insights/ - webinars and publication
http://www.softwarevalue.com/news/training/ - trainings
34. www.luxoft.com
Agile Events
Trainings: ICAgile Agile Team Facilitation – 30/06-01/07 in Kiev and 20/07-21/07 in Moscow
http://www.luxoft-training.ru/kurs/icagile_icp_agile_team_facilitation_icagile_icp-atf.html
Webinar:
Обзор сертификационного тренинга по фасилитации ICAgile Agile Team
Facilitationhttps://attendee.gotowebinar.com/register/5502311701820478468?source=webinar
7 main qualities of Agile team member https://attendee.gotowebinar.com/register/4051474223132743428?source=webinar
Что такое коучинг, чем коучинг не является и что такое Agile коучинг
https://attendee.gotowebinar.com/register/6313717198259291652?source=webinar
Встречи:
“Эксперементариум: фасилитация в реальном времени и контексте” – митап в Киеве
https://www.facebook.com/events/862901353855957/
IT Spring http://itspring.by conference in Minsk
IT Global Meetup in Saint Petersburg