Showing posts with label functions. Show all posts
Showing posts with label functions. Show all posts

20 February 2025

💠🛠️🗒️SQL Server: Folding [Notes]

Disclaimer: This is work in progress intended to consolidate information from various sources. It considers only on-premise SQL Server, for other platforms please refer to the documentation.

Last updated: 20-Feb-2024

[SQL Server] Folding

  • {def} the process by which the optimizer is able to properly determine certain types of indexable expressions even when the column in the expression is involved in a subexpression or nestled in a function 
    • is an optimization over older versions of SQL Server in which the optimizer was unable to use an index to service a query clause when the table column was involved in an expression or buried in a function [1]
  • {type} constant folding 
    • some constant expression is evaluated early
    • foldable constant expressions [2]
      • arithmetical expressions 
      • logical expressions 
      • built-in functions whose input doesn’t depend of contextual information, 
        • e. g. SET options, language settings, database options, encryption keys
        • deterministic built-in functions are foldable, with some exceptions
      • certain forms of the LIKE predicate
      • [SQL Server 2012+] deterministic methods of CLR user-defined types [3]
      • [SQL Server 2012+] deterministic scalar-valued CLR user-defined functions [3]
    • nonfoldable expressions [2]
      • expressions whose results depend on a local variable or parameter
      • user-defined functions
        • both T-SQL and CLR
      • expressions whose results depend on language settings.
      • expressions whose results depend on SET options.
      • expressions whose results depend on server configuration options.
      • nonconstant expressions such as an expression whose result depends on the value of a column.
      • nondeterministic functions
      • if the output is a large object type, then the expressions are not folded 
        • e.g. text, image, nvarchar(max), varchar(max), varbinary(max), XML
    • {benefit} the expression does not have to be evaluated repeatedly at run time [2]
    • {benefit} the value of the expression after it is evaluated is used by the query optimizer to estimate the size of the result set of the portion of the query [2]
      • e.g. TotalDue > 117.00 + 1000.00
  • {type} nonconstant folding
    • some expressions that are not constant folded but whose arguments are known at compile time, whether the arguments are parameters or constants, are evaluated by the result-set size (cardinality) estimator that is part of the optimizer during optimization [2]
    • deterministic functions: 
      • e.g. UPPER, LOWER, RTRIM
      • e.g. DATEPART( YY only ), GetDate, CAST, CONVERT
    • operators 
      • arithmetic operators: +, -, *, /, unary -, 
      • logical Operators: AND, OR, NOT
      • comparison operators: <, >, <=, >=, <>, LIKE, IS NULL, IS NOT NULL

Previous Post <<||>> Next Post

References:
[1] Ken Henderson (2003) Guru's Guide to SQL Server Architecture and Internals
[2] Microsoft Learn (2012) SQL Server: Troubleshooting Poor Query Performance: Constant Folding and Expression Evaluation During Cardinality Estimation [link]
[3] Microsoft Learn (2025) SQL Server: Query processing architecture guide [link]
[4] SQLShack (2021) Query Optimization in SQL Server for beginners, by Esat Erkec [link]

06 February 2025

🌌🏭KQL Reloaded: First Steps (Part V: Database Metadata)

When working with a new data repository, one of the first things to do is to look at database's metadata, when available, and try to get a birds eye view of what's available, how big is the databases in terms of size, tables and user-defined objects, how the schema was defined, how the data are stored, eventually how often backup are taken, what users have access and to what, etc. 

So, after creating some queries in KQL and figuring out how things work, I tried to check what metadata are available, how it can be accessed, etc. The target is not to provide a full list of the available metadata, but to understand what information is available, in what format, how easy is to extract the important metadata, etc. 

So, the first set of metadata is related to database:

// get database metadata metadata
.show databases (ContosoSales)

// get database metadata metadata (multiple databases)
.show databases (ContosoSales, Samples)

// get database schema metadata
.show databases (ContosoSales) schema

// get database schema metadata (multiple databases) 
.show databases (ContosoSales, Samples) schema

// get database schema violations metadata
.show database ContosoSales schema violations

// get database entities metadata
.show databases entities with (showObfuscatedStrings=true)
| where DatabaseName == "ContosoSales"

// get database metadata 
.show databases entities with (resolveFunctionsSchema=true)
| where DatabaseName == "ContosoSales" and EntityType == "Table"
//| summarize count () //get the number of tables

// get a function's details
.show databases entities with (resolveFunctionsSchema=true)
| where DatabaseName == "ContosoSales" 
    and EntityType == "Function" 
    and EntityName == "SalesWithParams"

// get external tables metadata
.show external tables

// get materialized views metadata
.show materialized-views

// get query results metadata
.show stored_query_results

// get entities groups metadata
.show entity_groups

Then, it's useful to look at the database objects. 

// get all tables 
.show tables 
//| count

// get tables metadata
.show tables (Customers, NewSales)

// get tables schema
.show table Customers cslschema

// get schema as json
.show table Customers schema as json

// get table size: Customers
Customers
| extend sizeEstimateOfColumn = estimate_data_size(*)
| summarize totalSize_MB=round(sum(sizeEstimateOfColumn)/1024.00/1024.00,2)

Unfortunately, the public environment has restrictions in what concerns the creation of objects, while for the features available one needs to create some objects to query the corresponding metadata.

Furthermore, it would be interesting to understand who has access to the various repositories, what policies were defined, and so on. 

// get principal roles
.show database ContosoSales principal roles

// get principal roles for table
.show table Customers principal roles

// get principal roles for function:
.show function SalesWithParams principal roles

// get retention policies
.show table Customers policy retention

// get sharding policies
.show table Customers policy sharding

There are many more objects one can explore. It makes sense to document the features, respectively the objects used for the various purposes.

In addition, one should check also the best practices available for the data repository (see [2]).

Happy coding!

Previous Post <<||>> Next Post

References:
[1] Microsoft Learn (2024) Management commands overview [link]
[2] Microsoft Learn (2024) Kusto: Best practices for schema management [link]

31 January 2025

🌌🏭KQL Reloaded: First Steps (Part II: Working with Dates)

Knowing how to work with dates and manipulate them accordingly is probably one of the important pieces of knowledge in any query language. Fortunately, KQL has many date-related functions that can help developers in the process and the available documentation is detailed enough to support users in learning their use. The current post focuses on the main uses of dates. 

Please note that the scripts consider the main time units. Please check the documentation for functions' call for other time units.

Create dates via make_datetime, now and ago functions:

// creating dates from parts
print datetime1 = make_datetime(2025,1,1)
, datetime2 = make_datetime(2025,1,1,0,0,0)
, datetime3 = make_datetime(2025,1,1,1,2,3)

// creating dates from values
print date1 = datetime(2024-02-01)
, datetime(2024-02-01 00:00:00)
, datetime(2024-02-01 23:59:59)
, datetime(2024-02-01 23:59:59.123)

// now vs todatetime (return the same value)
print datetime1 = now()
, datetime2 = todatetime(now())
, datetime3 = ago(0h)

Extract information from dates via datetime_part, substring and individual functions: getyear, week_of_year, monthofyear, dayofyear, hourofday, dayofmonth, dayofweek, dayofyear, dayofmonth, dayofweek, endofyear, endofweek, endofmonth, endofday, startofyear, startofweek, startofmonth, startofday:

// date parts front date
print now = now()
, year = datetime_part('year', now())
, month = datetime_part('month', now())
, day = datetime_part('day', now())
, hour = datetime_part('hour', now())
, minute = datetime_part('minute', now())
, second = datetime_part('second', now())

// date parts from string 
let t = datetime("2024-12-31 10:35:59");
print year = substring(t, 0, 4) 
, month = substring(t, 5, 2) 
, day = substring(t, 8, 2) 
, hour = substring(t, 11, 2) 
, minute = substring(t, 14, 2) 
, second = substring(t, 17, 2) 

// date parts via functions
print year = getyear(now())
, week = week_of_year(now())//ISO 8601 compliant
, month = monthofyear(now())
, day = dayofyear(now())
, hour = hourofday(now())

// day functions
print year = dayofyear(now())
, month = dayofmonth(now())
, day = dayofweek(now())

// end of time dates
print year = endofyear(now())
, week = endofweek(now())
, month = endofmonth(now())
, day = endofday(now())

// start of time dates
print year = startofyear(now())
, week = startofweek(now())
, month = startofmonth(now())
, day = startofday(now())

//time units
print hours1 = time(1hour)
, minutes1 = time(1min)
, seconds1 = time(1second)
, hours2 = totimespan("0.01:00:00")
, minutes2 = totimespan("0.00:01:00")
, seconds2 = totimespan("0.00:00:01")

Working with dates via datetime_add and datetime_diff functions:

// adding time units
print year = datetime_add('year',1,now())
, month = datetime_add('month',1,now())
, day = datetime_add('day',1,now())
, hour = datetime_add('hour',1,now())
, minutes = datetime_add('minute',1,now())
, seconds =  datetime_add('second',1,now())

// data differences
print years = datetime_diff('year', now(), ago(1h))
, months = datetime_diff('month', now(), ago(1h))
, days = datetime_diff('day', now(), ago(1h))
, hours = datetime_diff('hour', now(), ago(1h))
, minutes = datetime_diff('minute', now(), ago(1h))
, seconds = datetime_diff('second', now(), ago(1h))

Working with time zones via datetime_local_to_utc and datetime_utc_to_local functions:

// local time across time zones
print ParisTime = datetime_local_to_utc(now(),'Europe/Paris')
, LondonTime = datetime_local_to_utc(now(),'Europe/London')
, LondonTime = datetime_local_to_utc(now(),'Europe/Budapest')
, AthensTime = datetime_local_to_utc(now(),'Europe/Athens') // local time across time zones print ParisTime = datetime_utc_to_local(now(),'Europe/Paris') , LondonTime = datetime_utc_to_local(ago(1h),'Europe/London') , BudapestTime = datetime_utc_to_local(ago(-1h),'Europe/Budapest') , AthensTime = datetime_utc_to_local(ago(-2h),'Europe/Athens')

Applying different formatting with tostring, format_timespan and format_datetime functions:

// date and time to string
print date1 = tostring(datetime(2024-02-01 00:00:00))
, time1 = tostring(totimespan("0.01:02:03"))
, hours1 = tostring(time(1hour))

// formatting timespans
let t = time("25.10:35:59.123456");
print date1 = format_timespan(t, 'dd.hh:mm:ss:FF')
, date2 = format_timespan(t, 'ddd.h:mm:ss [ffff]')

// formatting dates
let t = datetime("2024-12-31 10:35:59");
print date1 = format_datetime(t,'yyyy-MM-dd [HH:mm:ss]')
, date2 = format_datetime(t,'yy-MM-dd HH:mm:ss')
, date3 = format_datetime(t,'yy-MM-dd [HH:mm:ss tt]')

Considering the above functions, one has a good basis for working with dates. 

Happy coding!

Previous Post <<||>> Next Post

17 May 2018

🔬Data Science: Learning (Definitions)

"Procedures for modifying the weights on the connection links in a neural net (also known as training algorithms, learning rules)." (Laurene V Fausett, "Fundamentals of Neural Networks: Architectures, Algorithms, and Applications", 1994)

"In the simplest form: self-adaptation at the processing element level. Weighted connections between processing elements or weights are adjusted to achieve specific results, eliminating the need for writing a specific algorithm for each problem. More generally: change of rules or behavior for a certain objective." (Guido J Deboeck and Teuvo Kohonen, "Visual explorations in finance with self-organizing maps", 2000)

"generic name for all behavioral changes that depend on experiences and improve the performance of a system. In a more restricted sense learning is identical with adaptation, especially selective modification of parameters of a system." (Teuvo Kohonen, "Self-Organizing Maps" 3rd Ed., 2001)

"A process whereby a training set of examples is used to generate a model that understands and generalizes the relationship between the descriptor variables and one or more response variables." (Glenn J Myatt, "Making Sense of Data: A Practical Guide to Exploratory Data Analysis and Data Mining", 2006)

"The process of automatically finding relations between inputs and outputs given examples of that relation." (Craig F Smith & H Peter Alesso, "Thinking on the Web: Berners-Lee, Gödel and Turing", 2008)

"An essential operation of acquiring, processing and storing information required by any intelligent system for evolution." (T R Gopalakrishnan Nair, "Cognitive Approaches for Intelligent Networks", 2015)

"Adaptation of synaptic weights of a neural network as training progresses, usually with the objective of minimizing a cost function." (Anand Parey & Amandeep S Ahuja, "Application of Artificial Intelligence to Gearbox Fault Diagnosis: A Review", 2016)

"Algorithm for changing the parameters of a function based on examples. Learning algorithms are said to be “supervised” when both inputs and desired outputs are given or “unsupervised” when only inputs are given. Reinforcement learning is a special case of a supervised learning algorithm when the only feedback is a reward for good performance." (Terrence J Sejnowski, "The Deep Learning Revolution", 2018)

"A phase in the machine learning methods that aggregates some information about the state actions for using in the future predictions of the events." (Derya Yiltas-Kaplan, "The Usage Analysis of Machine Learning Methods for Intrusion Detection in Software-Defined Networks", 2019)

02 March 2018

🔬Data Science: Hash Function (Definition)

"A function that maps a set of keys onto a set of addresses." (S. Sumathi & S. Esakkirajan, "Fundamentals of Relational Database Management Systems", 2007)

"A function that maps a string of arbitrary length to a fixed size value in a deterministic manner. Such a function may or may not have cryptographic applications." (Mark S Merkow & Lakshmikanth Raghavan, "Secure and Resilient Software Development", 2010)

[cryptographic hash function:] "A function that takes an input string of arbitrary length and produces a fixed-size output for which it is unfeasible to find two inputs that map to the same output, and it is unfeasible to learn anything about the input from the output." (Mark S Merkow & Lakshmikanth Raghavan, "Secure and Resilient Software Development", 2010)

[one-way hash function:] "A hash function for which it is computationally unfeasible to determine anything about the input from the output." (Mark S Merkow & Lakshmikanth Raghavan, "Secure and Resilient Software Development", 2010)

"A function that operates on an arbitrary-length input value and returns a fixed-length hash value." (Oracle, "Database SQL Tuning Guide Glossary", 2013)

[one-way hash:] "A one-way hash is an algorithm that transforms one string into another string (a fixed-length sequence of seemingly random characters) in such a way that the original string cannot be calculated by operations on the one-way hash value (i.e., the calculation is one way only). One-way hash values can be calculated for any string, including a person’s name, a document, or an image. For any input string, the resultant one-way hash will always be the same. If a single byte of the input string is modified, the resulting one-way hash will be changed and will have a totally different sequence than the one-way hash sequence calculated for the unmodified string. One-way hash values can be made sufficiently long (e.g., 256 bits) that a hash string collision (i.e., the occurrence of two different input strings with the same one-way hash output value) is negligible." (Jules H Berman, "Principles of Big Data: Preparing, Sharing, and Analyzing Complex Information", 2013)

"A hash function is an algorithm that maps from an input, for example, a string of characters, to an output string. The size of the input can vary, but the size of the output is always the same." (Dan Sullivan, "NoSQL for Mere Mortals®", 2015)

[one-way hash:] "Cryptographic process that takes an arbitrary amount of data and generates a fixed-length value. Used for integrity protection." (Adam Gordon, "Official (ISC)2 Guide to the CISSP CBK" 4th Ed., 2015)

"A function that takes as input the key of an element and produces an integer as output" (Nell Dale et al, "Object-Oriented Data Structures Using Java" 4th Ed., 2016)

"encryption methods that use no keys." (Manish Agrawal, "Information Security and IT Risk Management", 2014)

"A function that operates on an arbitrary-length input value and returns a fixed-length hash value." (Oracle, "Oracle Database Concepts")

01 May 2017

⛏️Data Management: Hash (Definitions)

"A number (often a 32-bit integer) that is derived from column values using a lossy compression algorithm. DBMSs occasionally use hashing to speed up access, but indexes are a more common mechanism." (Peter Gulutzan & Trudy Pelzer, "SQL Performance Tuning", 2002)

"A set of characters generated by running text data through certain algorithms. Often used to create digital signatures and compare changes in content." (Tom Petrocelli, "Data Protection and Information Lifecycle Management", 2005)

"Hash, a mathematical method for creating a numeric signature based on content; these days, often unique and based on public key encryption technology." (Bo Leuf, "The Semantic Web: Crafting infrastructure for agency", 2006)

[hash code:] "An integer calculated from an object. Identical objects have the same hash code. Generated by a hash method." (Michael Fitzgerald, "Learning Ruby", 2007)

"An unordered collection of data where keys and values are mapped. Compare with array." (Michael Fitzgerald, "Learning Ruby", 2007)

"A cryptographic hash is a fixed-size bit string that is generated by applying a hash function to a block of data. Secure cryptographic hash functions are collision-free, meaning there is a very small possibility of generating the same hash for two different blocks of data. A secure cryptographic hash function should also be one-way, meaning it is infeasible to retrieve the original text from the hash." (Michael Coles & Rodney Landrum, "Expert SQL Server 2008 Encryption", 2008)

"A hash is the result of applying a mathematical function or transformation on data to generate a smaller 'fingerprint' of the data. Generally, the most useful hash functions are one-way collision-free hashes that guarantee a high level of uniqueness in their results." (Michael Coles, "Pro T-SQL 2008 Programmer's Guide", 2008)

"The output of a hash function." (Mark S Merkow & Lakshmikanth Raghavan, "Secure and Resilient Software Development", 2010)

"A number based on the hash value of a string." (DAMA International, "The DAMA Dictionary of Data Management", 2011)

"1.Data allocated in an algorithmically randomized fashion in an attempt to evenly distribute data and smooth access patterns. 2.Verb. To calculate a hash key for data." (DAMA International, "The DAMA Dictionary of Data Management", 2011)

"A hash is the result of applying a mathematical function or transformation on data to generate a smaller 'fingerprint' of the data. Generally, the most useful hash functions are one-way collision-free hashes that guarantee a high level of uniqueness in their results." (Jay Natarajan et al, "Pro T-SQL 2012 Programmer's Guide" 3rd Ed., 2012)

"An unordered association of key/value pairs, stored such that you can easily use a string key to look up its associated data value. This glossary is like a hash, where the word to be defined is the key and the definition is the value. A hash is also sometimes septisyllabically called an “associative array”, which is a pretty good reason for simply calling it a 'hash' instead." (Jon Orwant et al, "Programming Perl" 4th Ed., 2012)

"In a hash cluster, a unique numeric ID that identifies a bucket. Oracle Database uses a hash function that accepts an infinite number of hash key values as input and sorts them into a finite number of buckets. Each hash value maps to the database block address for the block that stores the rows corresponding to the hash key value (department 10, 20, 30, and so on)." (Oracle, "Database SQL Tuning Guide Glossary", 2013)

"The result of applying a mathematical function or transformation to data to generate a smaller 'fingerprint' of the data. Generally, the most useful hash functions are one-way, collision-free hashes that guarantee a high level of uniqueness in their results." (Miguel Cebollero et al, "Pro T-SQL Programmer’s Guide" 4th Ed., 2015)

[hash code:] "The output of the hash function that is associated with the input object" (Nell Dale et al, "Object-Oriented Data Structures Using Java" 4th Ed., 2016)

"A numerical value produced by a mathematical function, which generates a fixed-length value typically much smaller than the input to the function. The function is many to one, but generally, for all practical purposes, each file or other data block input to a hash function yields a unique hash value." (William Stallings, "Effective Cybersecurity: A Guide to Using Best Practices and Standards", 2018)

"The number generated by a hash function to indicate the position of a given item in a hash table." (IEEE 610.5-1990)

04 December 2016

♟️Strategic Management: Objectives (Just the Quotes)

"The published objectives of a company will never reflect all the goals and values of the corporation as an institution or its management as human beings."(Richard Eells, California Management Review, 1959)

"Man will exercise self-direction and self-control in the service of objectives to which he is committed." (Douglas McGregor, "The Human Side of Enterprise", 1960)

"The decision which achieves organization objectives must be both (1) technologically sound and (2) carried out by people. If we lose sight of the second requirement or if we assume naively that people can be made to carry out whatever decisions are technically sound - we run the risk of decreasing rather than increasing the effectiveness of the organization." (Douglas McGregor, "The Human Side of Enterprise", 1960)

"The essential task of management is to arrange organizational conditions and methods of operations so that people can achieve their own goals best by directing their own efforts toward organizational objectives." (Douglas McGregor, "The Human Side of Enterprise", 1960)

"It is an axiom of program budgeting that the budget should facilitate the process of alternative methods of obtaining objectives." (Chester Wright, "Program Budgeting and Cost Benefit Analysis", 1969)

"[One] must not always assume that obscure and obfuscated objectives are totally lacking in function.(Harley H Hinrichs, "Program Budgeting and Cost Benefit Analysis", 1969)

"[Management by objectives is] a process whereby the superior and the subordinate managers of an enterprise jointly identify its common goals, define each individual's major areas of responsibility in terms of the results expected of him, and use these measures as guides for operating the unit and assessing the contribution of each of its members." (Robert House, "Administrative Science Quarterly", 1971)

"A manager [...] sets objectives [...] organizes [...] motivates and communicates [...] measure[s] [...] develops people. Every manager does these thingsknowingly or not. A manager may do them well, or may do them wretchedly, but always does them." (Peter F Drucker, "People and Performance", 1977)

"Objectives are not fate; they are direction. They are not commands; they are commitments. They do not determine the future; they are means to mobilize the resources and energies of the business for the making of the future." (Peter F Drucker, "People and Performance", 1977)

"[...] when a variety of tasks have all to be performed in cooperation, synchronization, and communication, a business needs managers and a management. Otherwise, things go out of control; plans fail to turn into action; or, worse, different parts of the plans get going at different speeds, different times, and with different objectives and goals, and the favor of the 'boss' becomes more important than performance." (Peter F Drucker, "People and Performance", 1977)

"Any approach to strategy quickly encounters a conflict between corporate objectives and corporate capabilities. Attempting the impossible is not good strategy; it is just a waste of resources." (Bruce Henderson, Henderson on Corporate Strategy, 1979)

"There are always 'class or prestige' gaps between various levels of management. There are also functional gaps between working units of the organization. If we superimpose the management gaps on top of the functional gaps, we find that companies are made up of small operational islands that refuse to communicate with one another for fear that giving up information may strengthen their opponents. The project manager’s responsibility is to get these islands to communicate cross-functionally toward common goals and objectives." (Harold Kerzner, "Project Management: A systems approach to planning, scheduling, and controlling", 1979)

"Given a multilevel organization having component groups which perform a variety of functions in order to accomplish a unified objective, an MIS [Management Information System] is an integrated structure of data bases and information flow over all levels and components, whereby information collection and transfer is optimized to meet the needs of the organization." (Larry E Long, "Manager's Guide to Computers and Information Systems", 1983)

"Management by objectives is a philosophy of managing that is based on identifying purposes, objectives, and desired results, establishing a realistic program for obtaining these results, and evaluating performance in achieving them." (R Henry Miglione, "An MBO Approach to Long-Range Planning", 1983)

"Public accounting taught me analytical approaches to business problems, objective reasoning, and the highest order of discipline in making factual presentations." (Harold Geneen, "Managing", 1984)

"Management has a responsibility to explain to the employee how the routine job contributes to the business's objectives. If management cannot explain the value of the job, then it should be eliminated and the employee reassigned." (Douglas M Reid, Harvard Business Review, 1986)

"Organizations are complex and paradoxical phenomena that can be understood in many different ways. Many of our taken-for-granted ideas about organizations are metaphorical, even though we may not recognize them as such. For example, we frequently talk about organizations as if they were machines designed to achieve predetermined goals and objectives, and which should operate smoothly and efficiently. And as a result of this kind of thinking, we often attempt to organize and manage them in a mechanistic way, forcing their human qualities into a background role. By using different metaphors to understand the complex and paradoxical character of organizational life, we are able to manage and design organizations in ways that we may not have thought possible before." (Gareth Morgan, "Images of Organization", 1986)

"[...] strategic planning and crisis management are complimentary. They coexist comfortably because both deal with the management of change. Crisis management concentrates on those brief moments of instability that must be dealt with first in order to get on with the larger and less time-sensitive job of reaching strategic objectives." (Gerald C Meyers, "When It Hits the Fan", 1986)

"The 'management by objectives' school [...] suggests that detailed objectives be spelled out at all levels in the corporation. This method is feasible at lower levels of management, but it becomes unworkable at the upper levels. The top manager must think out objectives in detail, but ordinarily some of the objectives must be withheld, or at least communicated to the organization in modest doses. A conditioning process that may stretch over months or years is necessary in order to prepare the organization for radical departures from what it is currently striving to attain." (H Edward Wrapp, Harvard Business Review on Human Relations, 1986)

"Top managers are currently inundated with reams of information concerning the organizational units under their supervision. Behind this information explosion lies a seemingly logical assumption made by information specialists and frequently accepted by line managers: if top management can be supplied with more 'objective' and 'accurate' quantified information, they will make 'better' judgments about the performance of their operating units. [...] A research study we have recently completed indicates that quantified performance information may have a more limited role than is currently assumed or envisioned; in fact, managers rely more on subjective information than they do on so called 'objective' statistics in assessing the overall performance of lower-level units." (Larry E. Greiner et al, Harvard Business Review on Human Relations, 1986)

"The most important reason for our success is we set our objectives and make sure we follow through on them." (Annette B Roux, The New York Times, 1987)

"[management by objectives] has become one more way to make organizations behave like machines." (Julien Phillips, "Success", 1988)

"The major fault in this process - and thus, in the way we were making decisions - is that it lacks an organizing framework. In pursuing a variety of goals and objectives, in whatever situation we manage, we often fail to see that some of them are in conflict and that the achievement of one might come at the expense of achieving another. In weighing up the actions we might take to reach our goals and objectives, we have no way to account for nature's complexity and only rarely factor it in." (Allan Savory & Jody Butterfield, "Holistic Management: A new framework for decision making", 1988)

"A process perspective sees not individual tasks in isolation, but the entire collection of tasks that contribute to a desired outcome. Narrow points of view are useless in a process context. It just won't do for each person to be concerned exclusively with his or her own limited responsibility, no matter how well these responsibilities are met. When that occurs, the inevitable result is working at cross–purpose, misunderstanding, and the optimization of the part at the expense of the whole. Process work requires that everyone involved be directed toward a common goal; otherwise, conflicting objectives and parochial agendas impair the effort."  (James A Champy & Michael M Hammer, "Reengineering the Corporation", 1993)

"A leader’s most important job is creating and constantly adjusting this strategic bridge between goals and objectives." (Richard Rumelt, "Good Strategy Bad Strategy", 2011)

"An OBJECTIVE […] is simply WHAT is to be achieved, no more and no less. By definition, objectives are significant, concrete, action oriented, and (ideally) inspirational. When properly designed and deployed, they’re a vaccine against fuzzy thinking - and fuzzy execution." (John Doerr, "Measure what Matters", 2018)

04 August 2016

♟️Strategic Management: Executives (Just the Quotes)

"Every business has its own particular sort of rat holes, through which its profits are carried piecemeal, and in quantities hardly noticeable at the time, but which aggregate thousands every year. The best way to plug these sources of loss is by accumulating data in regard to them and then keeping this data prominently before the executive."  (Allan C Haskell, "How to Make and Use Graphic Charts", 1919)

"Business executives cannot afford to ignore the merits of graphical representation which have for so long been accepted by the engineer and man of science. They must look behind the graphical method and study the conditions leading to the picture along with the picture itself. No business is too small to profit by an examination which shall analyze and scrutinize nor too large to ignore its possibilities. Each business must adjust the graphical methods to its own peculiarities and each diagram must be adjusted to the individual for whom it is prepared or the individual must be educated up to the use and importance of these methods of analysis." (William C Marshall, "Graphical methods for schools, colleges, statisticians, engineers and executives", 1921)

"The fine art of executive decision consists in not deciding questions that are not now pertinent, in not deciding prematurely, in not making decision that cannot be made effective, and in not making decisions that others should make. Not to decide questions that are not pertinent at the time is uncommon good sense, though to raise them may be uncommon perspicacity. Not to decide questions prematurely is to refuse commitment of attitude or the development of prejudice. Not to make decisions that cannot be made effective is to refrain from destroying authority. Not to make decisions that others should make is to preserve morale, to develop competence, to fix responsibility, and to preserve authority.
From this it may be seen that decisions fall into two major classes, positive decisions - to do something, to direct action, to cease action, to prevent action; and negative decisions, which are decisions not to decide. Both are inescapable; but the negative decisions are often largely unconscious, relatively nonlogical, "instinctive," "good sense." It is because of the rejections that the selection is good." (Chester I Barnard, "The Functions of the Executive", 1938)

"Centralized controls are designed to ensure that the chief executive can find out how well the delegated authority and responsibility are being exercised." (Ernest Dale, "Management: Theory and practice", 1965)

"In large-scale organizations, the factual approach must be constantly nurtured by high-level executives. The more layers of authority through which facts must pass before they reach the decision maker, the greater the danger that they will be suppressed, modified, or softened, so as not to displease the 'brass"' For this reason, high-level executives must keep reaching for facts or soon they won't know what is going on. Unless they make visible efforts to seek and act on facts, major problems will not be brought to their attention, the quality of their decisions will decline, and the business will gradually get out of touch with its environment." (Marvin Bower, "The Will to Manage", 1966)

"As in war, strategic success depends on tactical effectiveness, and no degree of planning can lessen management's tactical imperatives. The first responsibility of the executive, anyway, is to the here and now. If he makes a shambles of the present, there may be no future; and the real purpose of planning - the one whose neglect is common, but poisonous - is to safeguard and sustain the company in subsequent short-run periods." (Robert Heller, "The Naked Manager: Games Executives Play", 1972)

"How executives plan or what numbers they choose doesn't count; what does is the standard of performance they are ready to exact. The essence of any objective is that reaching it should be reasonable. The precondition is that you expect it to be met." (Robert Heller, "The Naked Manager: Games Executives Play", 1972)

"The dogma of delegation is simple - the Sixth Truth of Management again: either the delegatee is capable of running the operation successfully by himself or he isn't. This handy formula relieves the top executive of any responsibility except that of finding, supervising, and (at the appropriate time) moving the men who are doing all the work. He Can then truly manage by exception: he does not get worked up over operations that are going well, but concentrates on the plague spots, where everything, including the management, is going badly." (Robert Heller, "The Naked Manager: Games Executives Play", 1972)

"Management theory is obsessed with risks. Top executives bemoan the lack of risk-taking initiative among their young. Politicians and stockholders are advised (by directors) to make directors rich, so that they can afford to take risks. Theorists teach how to construct decision trees, heraldic devices of scientific management; and how to marry the trees with probability theory, so that the degree of risk along each branch (each branch and twig representing alternative results of alternative courses of action) can be metered. But the measuring is spurious, and, anyway, the best management doesn't take risks. It avoids them. It goes for the sure thing.(Robert Heller, "The Naked Manager: Games Executives Play", 1972)

"The acceptance of project management has not been easy, however. Many executives are not willing to accept change and are inflexible when it comes to adapting to a different environment." (Harold Kerzner, "Project Management", 1979)

"[Organizational] change is intervention, and intervention even with good intentions can lead to negative results in both the short and long run. For example, a change in structure in going from application of one theory to another might cause the unwanted resignation of a key executive, or the loss of an important customer. [...] the factor of change, acts as an overriding check against continual organizational alterations. It means that regardless of how well meant a change is, or how much logic dictates this change, its possible negative effects must be carefully weighed against the hoped-for benefits." (William A Cohen, "Principles of Technical Management", 1980)

"Superordinate goals - the goals above all others [..] play a pragmatic role by influencing implementation at the operational level. Because an executive cannot be everywhere at once, many decisions are made without his knowledge. What superordinate goals do, in effect, is provide employees with a "compass" and point their footsteps in the right direction [... to] independent decisions." (Richard T Pascale & Anthony G Athos, "The Art of Japanese Management", 1981)

"Executives have to start understanding that they have certain legal and ethical responsibilities for information under their control." (Jim Leeke, PC Week, 1987)

"Management: The definition that includes all the other definitions in this book and which, because of that, is the most general and least precise. Its concrete, people meaning - the board of directors and all executives with the power to make decisions - is no problem, except for the not-so-little matter of where to draw the line between managers who are part of 'the management' and managers who are not. (Robert Heller, "The Pocket Manager", 1987)

"Ethics must begin at the top of an organization. It is a leadership issue and the chief executive must set the example." (Edward L Hennessy Jr., The New York Times, 1988)

"With a vision, the executive provides the all-important bridge from the present to the future of the organization." (Warren G Bennis, "Beyond Leadership: Balancing Economics, Ethics, and Ecology", 1994)

"There is no such thing as a standard enterprise architecture. Enterprise design is as unique as a human fingerprint, because enterprise differ in how they function. Adopting an enterprise architecture is therefore one of the most urgent tasks for top executive management. Fundamentally, and information framework is a political doctrine for specifying as to who will have what information to make timely decisions." (Paul A Strassmann, "The politics of information management: policy guidelines", 1995)

"The Balanced Scorecard has its greatest impact when it is deployed to drive organizational change. [...] The Balanced Scorecard is primarily a mechanism for strategy implementation, not for strategy formulation. It can accommodate either approach for formulating business unit strategy-starting from the customer perspective, or starting from excellent internal-business-process capabilities. For whatever approach that SBU senior executives use to formulate their strategy, the Balanced Scorecard will provide an invaluable mechanism for translating that strategy into specific objectives, measures, and targets, and monitoring the implementation of that strategy during subsequent periods." (Robert S Kaplan & David P Norton, "The Balanced Scorecard", Harvard Business Review, 1996)

"Without meaningful data there can be no meaningful analysis. The interpretation of any data set must be based upon the context of those data. Unfortunately, much of the data reported to executives today are aggregated and summed over so many different operating units and processes that they cannot be said to have any context except a historical one - they were all collected during the same time period. While this may be rational with monetary figures, it can be devastating to other types of data." (Donald J Wheeler, "Understanding Variation: The Key to Managing Chaos" 2nd Ed., 2000)

"Project failures are not always the result of poor methodology; the problem may be poor implementation. Unrealistic objectives or poorly defined executive expectations are two common causes of poor implementation. Good methodologies do not guarantee success, but they do imply that the project will be managed correctly." (Harold Kerzner, "Strategic Planning for Project Management using a Project Management Maturity Model", 2001)

"We all would like to know more and, at the same time, to receive less information. In fact, the problem of a worker in today's knowledge industry is not the scarcity of information but its excess. The same holds for professionals: just think of a physician or an executive, constantly bombarded by information that is at best irrelevant. In order to learn anything we need time. And to make time we must use information filters allowing us to ignore most of the information aimed at us. We must ignore much to learn a little." (Mario Bunge, "Philosophy in Crisis: The Need for Reconstruction", 2001)

"Organizations face challenges of all kinds after activating their new systems. To be sure, these challenges are typically not as significant as those associated with going live. Still, executives and end users should never assume that system activation means that everyone is home free. Systems are hardly self-sufficient, and issues always appear." (Phil Simon, "Why New Systems Fail: An Insider’s Guide to Successful IT Projects", 2010)

"[Executives] make decisions based on delusional optimism rather than on a rational weighting of gains, losses, and probabilities. They overestimate benefits and underestimate costs. They spin scenarios of success while overlooking the potential for mistakes and miscalculations. As a result, they pursue initiatives that are unlikely to come in on budget or on time or to deliver the expected returns - ​​​​​​or even to be completed." (Daniel Kahneman, "Thinking, Fast and Slow", 2011)

"Any chief executive who hires a consultant to give them strategy should be fired." (Duff McDonald, "The Firm", 2014)

"Most discussions of decision making assume that only senior executives make decisions or that only senior executives' decisions matter. This is a dangerous mistake. Decisions are made at every level of the organization, beginning with individual professional contributors and frontline supervisors. These apparently low-level decisions are extremely important in a knowledge-based organization." (Zach Gemignani et al, "Data Fluency", 2014)

"In order to cultivate a culture of accountability, first it is essential to assign it clearly. People ought to clearly know what they are accountable for before they can be held to it. This goes beyond assigning key responsibility areas (KRAs). To be accountable for an outcome, we need authority for making decisions, not just responsibility for execution. It is tempting to refrain from the tricky exercise of explicitly assigning accountability. Executives often hope that their reports will figure it out. Unfortunately, this is easier said than done." (Sriram Narayan, "Agile IT Organization Design: For Digital Transformation and Continuous Delivery", 2015)

"Strategic coherence is more important than strategic precision in an uncertain world. It is impossible to get everything right because of market volatility, but we can ensure strategies do not collide. In large, complex organizations where many executives are empowered to launch major change, strategic incoherence can be a big problem." (Paul Gibbons, "The Science of Successful Organizational Change",  2015)

"Along with the important information that executives need to be data literate, there is one other key role they play: executives drive data literacy learning and initiatives at the organization." (Jordan Morrow, "Be Data Literate: The data literacy skills everyone needs to succeed", 2021)

"Standardization enables delegation of authority, allowing the top management and executives to have time to think about future plans and policy, which is their most important duty." (Kaoru Ishikawa)

12 February 2016

♜Strategic Management: Business Impact Analysis (Definitions)

"The process of delineating the functions most critical to the survival of a business." (Yvette Ghormley, "Business Continuity and Disaster Recovery Plans", 2009)

"A management-level analysis which identifies the impacts of losing company resources. The BIA measures the effect of resource loss and escalating losses over time, in order to provide senior management with reliable data on which to base decisions concerning risk mitigation and continuity planning." (Mark S Merkow & Lakshmikanth Raghavan, "Secure and Resilient Software Development", 2010)

"A method or exercise to determine the impact of losing the support or availability of a resource." (Linda Volonino & Efraim Turban, "Information Technology for Management" 8th Ed., 2011)

"Aims to (a) identify critical business processes, stakeholders, assets, resources and internal/external dependencies and (b) assesses and evaluates potential damages or losses at business level that may be caused by a threat to IT landscape." (Ulrich Winkler & Wasif Gilani, "Business Continuity Management of Business Driven IT Landscapes", 2012)

"A process used to analyze the business and identify critical functions and services. The BIA also helps the organization determine the cost impact of losing these functions and services. Organizations use the results as part of an overall business continuity plan." (Darril Gibson, "Effective Help Desk Specialist Skills", 2014)

"The identification of services and products that are critical to the organization." (Manish Agrawal, "Information Security and IT Risk Management", 2014)

"The process of analysing activities and the effect that a business disruption might have upon them." (David Sutton, "Information Risk Management: A practitioner’s guide", 2014)

"An exercise that determines the impact of losing the support of any resource to an organization, establishes the escalation of that loss over time, identifies the minimum resources needed to recover, and prioritizes the recovery of processes and supporting systems." (Adam Gordon, "Official (ISC)2 Guide to the CISSP CBK" 4th Ed., 2015)

"A functional analysis in which a team collects data, documents business functions, develops a hierarchy of business functions, and applies a classification scheme to indicate each individual function’s criticality level." (Shon Harris & Fernando Maymi, "CISSP All-in-One Exam Guide" 8th Ed., 2018)

"The analysis of an information system’s requirements, functions, and interdependencies used to characterize system contingency requirements and priorities in the event of a significant disruption." (William Stallings, "Effective Cybersecurity: A Guide to Using Best Practices and Standards", 2018)

"A business continuity management activity which is mainly intended for defining the core business functions, the recovery priorities regarding these functions and the corresponding time required for the resumption of each function." (Athanasios Podaras et al, "Regression-Based Recovery Time Predictions in Business Continuity Management: A Public College Case Study", 2021)

"Activity that identifies the VMF and their dependencies" (ITIL)

"An analysis of an information system’s requirements, functions, and interdependencies used to characterize system contingency requirements and priorities in the event of a significant disruption." (CNSSI 4009-2015)

13 December 2014

🕸Systems Engineering: Synergy (Just the Quotes)

"The constructive process inheres in all forms of synergy, and the cooperation of antithetical forces in nature always results in making, that is, in creating something that did not exist before. But in the organic world this character of structure becomes the leading feature, and we have synthetic products consisting of tissues and organs serving definite purposes, which we call functions." (Lester F Ward, "Pure Sociology", 1903)

"[...] there is a universal principle, operating in every department of nature and at every stage of evolution, which is conservative, creative and constructive. [...] I have at last fixed upon the word synergy, as the term best adapted to express its twofold character of ‘energy’ and ‘mutuality’ or the systematic and organic ‘working together’ of the antithetical forces of nature. [...] Synergy is a synthesis of work, or synthetic work, and this is what is everywhere taking place. It may be said to begin with the primary atomic collision in which mass, motion, time, and space are involved, and to find its simplest expression in the formula for force, which implies a plurality of elements, and signifies an interaction of these elements." (Lester F Ward, "Pure Sociology", 1903)

"Social structures are the products of social synergy, i.e., of the interaction of different social forces, all of which, in and of themselves, are destructive, but whose combined effect, mutually checking, constraining, and equilibrating one another, is to produce structures. The entire drift is toward economy, conservatism, and the prevention of waste. Social structures are mechanisms for the production of results, and the results cannot be secured without them. They are reservoirs of power." (James Q Dealey & Lester F Ward, "A Text-book of Sociology", 1905)

"The true nature of the universal principle of synergy pervading all nature and creating all the different kinds of structure that we observe to exist, must now be made clearer. Primarily and essentially it is a process of equilibration, i.e., the several forces are first brought into a state of partial equilibrium. It begins in collision, conflict, antagonism, and opposition, and then we have the milder phases of antithesis, competition, and interaction, passing next into a modus vivendi, or compromise, and ending in collaboration and cooperation. […] The entire drift is toward economy, conservatism, and the prevention of waste." (James Q Dealey & Lester F Ward, "A Text-book of Sociology", 1905)

"Synergy is the only word in our language that means behavior of whole systems unpredicted by the separately observed behaviors of any of the system's separate parts or any subassembly of the system's parts." (R Buckminster Fuller, "Operating Manual for Spaceship Earth", 1963)

"Synergy means behavior of whole systems unpredicted by the behavior of their parts taken separately." (R Buckminster Fuller, "Synergetics: Explorations in the Geometry of Thinking", 1975)

"[...] synergy is the consequence of the energy expended in creating order. It is locked up in the viable system created, be it an organism or a social system. It is at the level of the system. It is not discernible at the level of the system. It is not discernible at the level of the system’s components. Whenever the system is dismembered to examine its components, this binding energy dissipates." (J-C Spender, "Organizational Knowledge, Collective Practice and Penrose Rents", 1999)

"There is a multilayering of global networks in the key strategic activities that structure and destructure the planet. When these multilayered networks overlap in some node, when there is a node that belongs to different networks, two major consequences follow. First, economies of synergy between these different networks take place in that node: between financial markets and media businesses; or between academic research and technology development and innovation; between politics and media." (Manuel Castells, "The Rise of the Network Society", 1996)

"With the growing interest in complex adaptive systems, artificial life, swarms and simulated societies, the concept of 'collective intelligence' is coming more and more to the fore. The basic idea is that a group of individuals (e. g. people, insects, robots, or software agents) can be smart in a way that none of its members is. Complex, apparently intelligent behavior may emerge from the synergy created by simple interactions between individuals that follow simple rules." (Francis Heylighen, "Collective Intelligence and its Implementation on the Web", 1999)

"Systems thinking means the ability to see the synergy of the whole rather than just the separate elements of a system and to learn to reinforce or change whole system patterns. Many people have been trained to solve problems by breaking a complex system, such as an organization, into discrete parts and working to make each part perform as well as possible. However, the success of each piece does not add up to the success of the whole. to the success of the whole. In fact, sometimes changing one part to make it better actually makes the whole system function less effectively." (Richard L Daft, "The Leadership Experience", 2002)

"Self-organization can be seen as a spontaneous coordination of the interactions between the components of the system, so as to maximize their synergy. This requires the propagation and processing of information, as different components perceive different aspects of the situation, while their shared goal requires this information to be integrated. The resulting process is characterized by distributed cognition: different components participate in different ways to the overall gathering and processing of information, thus collectively solving the problems posed by any perceived deviation between the present situation and the desired situation." (Carlos Gershenson & Francis Heylighen, "How can we think the complex?", 2004)

"Synergy happens when people, things, or events combine to produce a larger impact than they would if each acted separately." (Thomas Homer-Dixon, "The Upside of Down: Catastrophe, Creativity, and the Renewal of Civilization", 2006)

[synergy:] "Measure describing how one agent or system increases the satisfaction of other agents or systems." (Carlos Gershenson, "Design and Control of Self-organizing Systems", 2007)

"To develop a Control, the designer should find aspect systems, subsystems, or constraints that will prevent the negative interferences between elements (friction) and promote positive interferences (synergy). In other words, the designer should search for ways of minimizing frictions that will result in maximization of the global satisfaction" (Carlos Gershenson, "Design and Control of Self-organizing Systems", 2007)

"Synergy is the combined action that occurs when people work together to create new alternatives and solutions. In addition, the greatest opportunity for synergy occurs when people have different viewpoints, because the differences present new opportunities. The essence of synergy is to value and respect differences and take advantage of them to build on strengths and compensate for weaknesses." (Richard L Daft, "The Leadership Experience" 4th Ed., 2008)

"Synergy occurs when organizational parts interact to produce a joint effect that is greater than the sum of the parts acting alone. As a result the organization may attain a special advantage with respect to cost, market power, technology, or employee." (Richard L Daft, "The Leadership Experience" 4th Ed., 2008)

"In short, synergy is the consequence of the energy expended in creating order. It is locked up in the viable system created, be it an organism or a social system. It is at the level of the system. It is not discernible at the level of the system. It is not discernible at the level of the system's components. Whenever the system is dismembered to examine its components, this binding energy dissipates." (J-C Spender, "Organizational Knowledge, Collective Practice and Penrose Rents", 2009)

"Synergy is defined as the surplus gained by working together. A task which couldn’t be fulfilled by one individual, can be completed by the work of different individuals together. To maximize synergy, first, the initial task is divided into different sub-tasks. Different agents perform different tasks, which is called division of labor. An end product of one work is used for another work, which is called workflow. Finally, everything needs to be put together. We call this aggregation. This isn’t as linear as it looks. At every step in the process it can happen that a task is divided into sub tasks or aggregated with other tasks." (Evo Busseniers, "Self-organization versus hierarchical organization", [thesis] 2018)

Related Posts Plugin for WordPress, Blogger...

About Me

My photo
Koeln, NRW, Germany
IT Professional with more than 24 years experience in IT in the area of full life-cycle of Web/Desktop/Database Applications Development, Software Engineering, Consultancy, Data Management, Data Quality, Data Migrations, Reporting, ERP implementations & support, Team/Project/IT Management, etc.