Wednesday, January 11, 2012

integration frameworks

  • Apache Camel
Apache Camel is a powerful open source integration framework based on known Enterprise Integration Patterns with powerful Bean Integration.
http://camel.apache.org/

Saturday, January 7, 2012

Decision Making Skills

  • Using a DECISION MATRIX to help you to decide between alternatives:

SWOT analysis is a subjective method used to evaluate the STRENGTHS, WEAKNESSES, OPPORTUNITIES, and THREATS involved in trying to attain an objective


Reference:
http://www.kent.ac.uk/careers/sk/decisionmaking.htm#DECISION

  • PEST analysis (political, economic, social and technological) describes a framework of macro-environmental factors used in the environmental scanning component of strategic management. It is part of an external analysis when conducting a strategic analysis or doing market research, and gives an overview of the different macro-environmental factors to be taken into consideration. It is a strategic tool for understanding market growth or decline, business position, potential and direction for operations.
https://en.wikipedia.org/wiki/PEST_analysis


  • Identifying "Big Picture" Opportunities and Threats
Changes in your business environment can create great opportunities for your organization – and cause significant threats.PEST Analysis is a simple and widely used tool that helps you analyze the Political, Economic, Socio-Cultural, and Technological changes in your business environment. This helps you understand the "big picture" forces of change that you're exposed to, and, from this, take advantage of the opportunities that they present.PEST Analysis is often linked with SWOT Analysis [Add to My Personal Learning Plan] , however, the two tools have different areas of focus. PEST Analysis looks at "big picture" factors that might influence a decision, a market, or a potential new business. SWOT Analysis explores these factors at a business, product-line or product level.These tools complement one another and are often used together.
https://www.mindtools.com/pages/article/newTMC_09.htm

business analyst role

What are the challenges a BA may need to overcome to respond to the increased expectations of companies who hire business analysts not just to manage requirements, but

also to perform project management and participate on decision-making processes?


To be truly effective, a BA must consider the project requirements their primary concern, from the development of a product vision and scope to detailed user and

software requirements specifications and the change control processes that will be used to manage requirements during the lifetime of the proj


Reference:
http://www.bridging-the-gap.com/expanding-the-business-analyst-role-good-or-bad/

preparation

Top 5 Job Interview Tips
http://career-advice.monster.co.uk/job-interview/preparing-for-job-interviews/top-5-job-interview-tips/article.aspx


Marketing Yourself Successfully - Video Advice
http://career-advice.monster.co.uk/job-interview/job-interview-behaviour/marketing-yourself-successfully-video/article.aspx

What is the difference between an incremental backup and a differential backup?

An Incremental backup backs up only the selected files that have their archive bit set to ON, setting them back to OFF.
a backup of all files that are new or changed since the last backup whether it was a full or an incremental.
The advantage of an Incremental is that it takes the least amount of time and media of all the backup methods.
In the case of restoring with Incremental backups, all the Incremental backups since the last full backup plus the last full backup would be necessary.




A Differential backup backs up only the selected files that have their archive bit set to ON but does not set the archive bit back to OFF.
A Differential backup will back up all selected files that are new and changed since the last full backup.
at restore time; you'll need only the last full backup and the last differential to get a complete restore

Reference:
http://wiki.answers.com/Q/What_is_the_difference_between_an_incremental_backup_and_a_differential_backup


  • Continuous data protection (CDP), also called continuous backup or real-time backup, refers to backup of computer data by automatically saving a copy of every change made to that data, essentially capturing every version of the data that the user saves. In its true form it allows the user or administrator to restore data to any point in time

https://en.wikipedia.org/wiki/Continuous_Data_Protection


Simply stated, continuous data protection (CDP), also called continuous backup, is a storage system that backs up data whenever any change is made in it. In effect, CDP creates an electronic journal of complete storage snapshots, one for every instant in time that data modification occurs.

Why continuous data protection?
IT complexity: Continuous data protection helps ensure continuous availability of the varied, cross-platform environments.
Administrative capability:
Cost factor:Continuous data protection may prove to be a cheaper solution than traditional backup and recovery solutions. Software-based continuous data protection solutions today are easy to deploy and manage,
Data growth:  Remote users in geographically dispersed locations have access to email, core systems and other mission-critical applications. In such cases, continuous data protection makes perfect sense for enterprises with locations in multiple geographies.
Criticality of data:Continuous data protection technologies enable seamless backup and restore at the backend without affecting end users. Many continuous data protection solutions can recover data from any point in time within less than a minute.

Most of the challenges with continuous data protection emanate from the environment being targeted. A true continuous data protection solution will support real-time protection rather than scheduled snapshots. The change rate of the data sets that are being protected could pose challenges to the continuous data protection solution.
https://www.computerweekly.com/tip/Continuous-data-protection-Do-you-need-it

SQL JOIN

The SQL JOIN clause is used whenever we have to select data from 2 or more tables.

There are 2 types of SQL JOINS – INNER JOINS and OUTER JOINS.

The INNER JOIN will select all rows from both tables as long as there is a match between the columns we are matching on.

SQL OUTER JOIN and it has 2 sub-types called LEFT OUTER JOIN and RIGHT OUTER JOIN.


The LEFT OUTER JOIN or simply LEFT JOIN (you can omit the OUTER keyword in most databases),
selects all the rows from the first table listed after the FROM clause, no matter if they have matches in the second table.

The RIGHT OUTER JOIN or just RIGHT JOIN behaves exactly as SQL LEFT JOIN, except that it returns all rows from the second table (the right table in our SQL JOIN statement).



References:
http://www.sql-tutorial.net/SQL-JOIN.asp
http://www.quackit.com/sql/tutorial/sql_outer_join.cfm
http://www.tizag.com/sqlTutorial/sqljoin.php
http://www.sqltutorial.org/sqljoin-innerjoin.aspx




  • INNER JOIN
Inner join shows matches only when they exist in both tables.this SQL will only give you result with customers who have orders. If the customer does not have order, it will not display that record
SELECT Customers.*, Orders.* FROM Customers INNER JOIN Orders ON Customers.CustomerID =Orders.CustomerID

There is another way to visualize the SQL INNER JOIN by using the Venn diagrams

  • LEFT OUTER JOIN
Left join will display all records in left table of the SQL statement. In SQL below customers with or without orders will be displayed. Order data for customers without orders appears as NULL values
SELECT Customers.*, Orders.* FROM Customers LEFT OUTER JOIN Orders ON Customers.CustomerID =Orders.CustomerID

There is another way to visualize the SQL INNER JOIN by using the Venn diagrams

  • RIGHT OUTER JOIN
Right join will display all records in right table of the SQL statement. In SQL below all orders with or without matching customer records will be displayed. Customer data for orders without customers appears as NULL values
SELECT Customers.*, Orders.* FROM Customers RIGHT OUTER JOIN Orders ON Customers.CustomerID =Orders.CustomerID

There is another way to visualize the SQL INNER JOIN by using the Venn diagrams

  • FULL OUTER JOIN
Full outer join it will return all records from left table and from right table.
There is another way to visualize the SQL INNER JOIN by using the Venn diagrams




  • JOIN SCHEMA



  • Using Cross Joins

A cross join that does not have a WHERE clause produces the Cartesian product of the tables involved in the join. The size of a Cartesian product result set is the number of rows in the first table multiplied by the number of rows in the second table.

The result set contains 170 rows (SalesPerson has 17 rows and SalesTerritory has 10; 17 multiplied by 10 equals 170).

http://msdn.microsoft.com/en-us/library/ms190690%28v=sql.105%29.aspx


The SQL CROSS JOIN produces a result set which is the number of rows in the first table multiplied by the number of rows in the second table, if no WHERE clause is used along with CROSS JOIN. This kind of result is called as Cartesian Product
http://www.w3resource.com/sql/joins/cross-join.php




  • Cross join

CROSS JOIN returns the Cartesian product of rows from tables in the join. In other words, it will produce rows which combine each row from the first table with each row from the second table



CREATE TABLE department
(
 DepartmentID INT,
 DepartmentName VARCHAR(20)
);

CREATE TABLE employee
(
 LastName VARCHAR(20),
 DepartmentID INT
);



INSERT INTO department(DepartmentID, DepartmentName) VALUES(31, 'Sales');
INSERT INTO department(DepartmentID, DepartmentName) VALUES(33, 'Engineering');
INSERT INTO department(DepartmentID, DepartmentName) VALUES(34, 'Clerical');
INSERT INTO department(DepartmentID, DepartmentName) VALUES(35, 'Marketing');

INSERT INTO employee(LastName, DepartmentID) VALUES('Rafferty', 31);
INSERT INTO employee(LastName, DepartmentID) VALUES('Jones', 33);
INSERT INTO employee(LastName, DepartmentID) VALUES('Steinberg', 33);
INSERT INTO employee(LastName, DepartmentID) VALUES('Robinson', 34);
INSERT INTO employee(LastName, DepartmentID) VALUES('Smith', 34);
INSERT INTO employee(LastName, DepartmentID) VALUES('John', NULL);

Example of an explicit cross join:

SELECT *
FROM employee
CROSS JOIN department;

Example of an implicit cross join:

SELECT *
FROM employee, department;


Inner join

SELECT *
FROM employee
INNER JOIN department ON employee.DepartmentID = department.DepartmentID;

The following example is equivalent to the previous one, but this time using implicit join notation:

SELECT *
FROM employee, department
WHERE employee.DepartmentID = department.DepartmentID;


Left outer join

SELECT *
FROM employee
LEFT OUTER JOIN department ON employee.DepartmentID = department.DepartmentID;


Right outer join

SELECT *
FROM employee
RIGHT OUTER JOIN department ON employee.DepartmentID = department.DepartmentID;


Full outer join

SELECT *
FROM employee
FULL OUTER JOIN department ON employee.DepartmentID = department.DepartmentID;


Self-join
A self-join is joining a table to itself

SELECT F.EmployeeID, F.LastName, S.EmployeeID, S.LastName, F.Country
FROM Employee F
INNER JOIN Employee S ON F.Country = S.Country
WHERE F.EmployeeID < S.EmployeeID
ORDER BY F.EmployeeID, S.EmployeeID;


http://en.wikipedia.org/wiki/Join_%28SQL%29

  • JOIN Three Tables

method 1

SELECT Orders.OrderID, Customers.CustomerName, Shippers.ShipperName
FROM ((Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID)
INNER JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID);

method 2
SELECT tablo1.OrderID, tablo1.CustomerName, Shippers.ShipperName
FROM (select * from Orders INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID) 
as tablo1
INNER JOIN Shippers ON tablo1.ShipperID = Shippers.ShipperID;

https://www.w3schools.com/sql/sql_join_inner.asp




Friday, January 6, 2012

The Key Differences Between SAN, DAS, and NAS

  • Direct-Attached Storage(DAS)

The most common form of server storage today is still direct attached storage.
The disks may be internal to the server or they may be in an array that is connected directly to the server
Either way, the storage can be accessed only through that server.
An application server will have its own storage; the next application server will have its own storage;
and the file and print servers will each have their own storage



  • Storage Area Networks(SAN)

A SAN allows more than one application server to share storage.
Data is stored at a block level and can therefore be accessed by an application, not directly by clients
The physical elements of the SAN (servers, switches, storage arrays, etc.) are typically connected with Fibre-Channel – an interconnect technology that permits high-performance resource sharing
Storage can be added without disrupting the applications, and different types of storage can be added to the pool.


A storage area network (SAN) is a dedicated network that provides access to consolidated, block level data storage. SANs are primarily used to make storage devices, such as disk arrays, tape libraries, and optical jukeboxes, accessible to servers so that the devices appear like locally attached devices to the operating system. A SAN typically has its own network of storage devices that are generally not accessible through the local area network by other devices
In storage networking terminology, a Storage Area Network (SAN) is a high-speed subnetwork of shared storage devices. A storage device is a machine that contains nothing but a disk or disks for storing data.

A SAN's architecture works in a way that makes all storage devices available to all servers on a LAN or WAN. As more storage devices are added to a SAN, they too will be accessible from any server in the larger network. In this case, the server merely acts as a pathway between the end user and the stored data.

Because stored data does not reside directly on any of a network's servers, server power is utilized for business applications, and network capacity is released to the end user.




  • Network Attached Storage(NAS)

A NAS appliance is a simplified form of file server; it is optimized for file sharing in an organization.
Authorized clients can see folders and files on the NAS device just as they can on their local hard drive
NAS devices are frequently used to consolidate file services.
To prevent the proliferation of file servers, a single NAS appliance can replace many regular file servers, simplifying management and reducing cost and workload for  the systems administrator.
NAS appliances are also multiprotocol, which means that they can share files among clients using Windows® and UNIX®-based operating systems.

Reference:
http://smbtechconnect.securelement.com/2008/03/key-differences-between-san-das-and-nas.html


  • An optical jukebox is a robotic data storage device that can automatically load and unload optical discs, such as Compact Disc, DVD, Ultra Density Optical or Blu-ray disc and can provide terabytes (TB) and petabytes (PB) of tertiary storage.

https://en.wikipedia.org/wiki/Optical_jukebox

spring interview questions


  • What is IOC (or Dependency Injection)?


The basic concept of the Inversion of Control pattern (also known as dependency injection) is that you do not create your objects but describe how they should be created
You don't directly connect your components and services together in code but describe which services are needed by which components in a configuration file


  • What is Spring ?

Spring is an open source framework created to address the complexity of enterprise application development.
Spring is a lightweight inversion of control and aspect-oriented container framework.



  • What are the advantages of Spring framework?

Spring has layered architecture.
Use what you need and leave you don't need now.
Spring Enables POJO Programming.
 POJO programming enables continuous integration and testability.
Dependency Injection and Inversion of Control Simplifies JDBC


  • What are features of Spring ?
Inversion of control (IOC):



Loose coupling is achieved in spring using the technique Inversion of Control.
The objects give their dependencies instead of creating or looking for dependent objects

Aspect oriented (AOP):
Spring supports Aspect oriented programming and enables cohesive development by separating application business logic from system services.

MVC Framework:
Spring comes with MVC web application framework, built on core Spring functionality.
This framework is highly configurable via strategy interfaces, and accommodates multiple view technologies like JSP, Velocity, Tiles, iText, and POI.
But other frameworks can be easily used instead of Spring MVC Framework.

JDBC Exception Handling:
The JDBC abstraction layer of the Spring offers a meaningful exception hierarchy, which simplifies the error handling strategy.
Integration with Hibernate, JDO, and iBATIS:
Spring provides best Integration services with Hibernate, JDO and iBATIS



  • What are the different modules in Spring framework?

The Core container module
Application context module
AOP module (Aspect Oriented Programming)
JDBC abstraction and DAO module
O/R mapping integration module (Object/Relational)
Web module
MVC framework module

Reference:
http://www.developersbook.com/spring/interview-questions/spring-interview-questions-faqs.php
http://www.javabeat.net/articles/103-spring-framework-interview-questions-1.html




  • Model-view-controller framework

The Spring Framework features its own MVC web application framework, which wasn't originally planned. The Spring developers decided to write their own web framework as a reaction to what they perceived as the poor design of the (then) popular Jakarta Struts web framework,
Like Struts, Spring MVC is a request-based framework
MVC paves the way for cleaner front end code. All interfaces are tightly coupled to the Servlet API.
This tight coupling to the Servlet API is seen by some as a failure on the part of the Spring developers to offer a high-level abstraction for web-based applications[citation needed].
However, this coupling makes sure that the features of the Servlet API remain available to developers while offering a high abstraction framework to ease working with said API.
http://en.wikipedia.org/wiki/Spring_Framework#Model-view-controller_framework



  • With desktop Java apps, you can have a single piece of 

code that instantiates the container and gets beans
• I.e., driver class that calls instantiates
ClassPathXmlApplicationContext and calls getBean
– With Web apps, each servlet wants access to beans
• But you want to instantiate container once only


bean scopes
– Standard Spring supports singleton and prototypeStandard Spring supports singleton and prototype
– Web apps also want request, session, and application


Regular Web Apps
Put bean definitions in WEB-INB/applicationContext.xml
• request and session scope now supported• request and session scope now supported
Declare two listeners in web.xml
• Container will be instantiated when app is loaded

JSF Apps
Same approach for JAR files, bean defn file, and listenerspp , ,
– Declare variable-resolver in faces-config.xml
Can declare beans in applicationContext or faces-config



applicationContext.xml
– Put “empty” file (with header and py (
<beans..></beans> only) in WEB-INF
• Unlike in desktop apps, the filename matters. The
standard loading utility assumes that name and location

/WEB-INF/applicationContext.xml
• If you want to change this default name/location, set a
context param called contextConfigLocation to override it


ContextLoaderListener
– This listener runs when the app is firs
instantiates the ApplicationContext (f
WEB-INF/applicationContext.xml) and places aWEB INF/applicationContext.xml) an
reference to it in the ServletContext
You can retrieve this reference with the static
tR i dW bA li ti C t t th d fgetRequiredWebApplicationContext method of
WebApplicationContextUtils


RequestContextListener
– This listener is needed if you declare any of your beans to
be request-scoped or session-scoped
IWb itdfth lSi f• I.e., Web scopes instead of the usual Spring scopes of
singleton or prototype


Not good to call getBean
– It would be technically legal to get the
ApplicationContext and call getBean explicitly (probably
from the backing bean’s action controller method). Butfrom the backing bean s action controller method). But
this is a bad idea since JSF is geared around declaring
beans in config files only



JSF already supports dependency injection
– The managed-property element lets you insert other beans
inside newly created ones.inside newly created ones.
• The only trick is to be able to refer to Spring beans



Use DelegatingVariableResolver
– Declare in faces-config.xml. Now, whenever JSF sees a
bean name, it uses JSF rules first, then Spring rules next.



Regular Web Apps
• Two JAR files
– Put Spring JAR files in WEB-INF/lib
• Bean definition file
PliiC liWEB INF– Put applicationContext.xml in WEB-INF
• Scopes now include request and session in addition to
singleton and prototype
• Listeners
– Two listener definitions in web.xml
G tti b• Getting beans
– Access ApplicationContext with static
getRequiredWebApplicationContext method ofgetRequiredWebApplicationContext method of
WebApplicationContextUtils
– Call getBean normally



JSF-Based Apps
• Basic setup
– Start with same setup as regular Web apps
– Use normal JSF definition of FacesServlet in web.xml
faces config xml• faces-config.xml
– Declare DelegatingVariableResolver
• Option 1• Option 1
– Declare Spring beans in applicationContext.xml
– Declare backing beans in faces-config.xmlg g
• Refer to Spring beans with managed-bean-property
• Option 2
– Declare all beans in applicationContext.xml
• Refer to other beans with ref and normal Spring syntax



Gets the Spring bean called sampleLookupService
and passes it to the setLookupService method of the
JSF backing bean called formBean (i.e., injects it
into the lookupService property).
into the lookupService property).


03-Spring-in-Web-Apps.pdf
http://courses.coreservlets.com/Course-Materials/spring.html

static scoping(lexical) vs dynamic scoping

Statically typed languages check types at compile time
The programmer ensures that parameter types are specified and the compiler ensures the programmers wishes will be followed.

In a dynamically typed language (like ruby, javascript, etc), types are not checked until execution
If an expression evaluates, then the type-checking worked. If not, it blows up to your error handling or the user

Static Scoping – Variables can be bound at compile time without regards to calling code.

Dynamic Scoping – Variable binding (context) can only be determined at the moment code is executed.



Reference:
http://hoolihan.net/blog-tim/2009/02/17/static-vs-dynamic-scope/
http://en.wikipedia.org/wiki/Scope_%28programming%29




  • First, Lexical Scope (also called Static Scope), in C-like syntax:

void fun()
{
    int x = 5;

    void fun2()
    {
        printf("%d", x);
    }
}
Every inner level can access its outer levels.
There is another way, called Dynamic Scope used by first implementation of Lisp, again in C-like Syntax:
void fun()
{
    printf("%d", x);
}

void dummy1()
{
    int x = 5;

    fun();
}

void dummy2()
{
    int x = 10;

    fun();
}
Here fun can either access x in dummy1 or dummy2, or any x in any function that call fun with xdeclared in it.
dummy1();
will print 5
dummy2();
will print 10

The first one is called static because it can be deduced at compile-time, the second is called dynamic because the outer scope is dynamic and depends on the chain call of the functions.
Dynamic scoping is like passing references of all variables to the called function.
stackoverflow

stack vs heap

how the memory of the computer is organized for a running program
When a program is loaded into memory, it is organized into three areas of memory, called segments:
the text segment,
stack segment,
heap segment.

The text segment (sometimes also called the code segment) is where the compiled code of the program itself resides
This is the machine language representation of the program steps to be carried out, including all functions making up the program, both user defined and system.

The stack is where memory is allocated for automatic variables within functions.

The heap segment provides more stable storage of data for a program;
memory allocated in the heap remains in existence for the duration of a program.
Therefore, global variables (storage class external), and static variables are allocated on the heap.


The stack is a place in the computer memory where all the variables that are declared and initialized before runtime are stored
The heap is the section of computer memory where all the variables created or initialized at runtime are stored

computer memory, it is organized into three segments:

text (code) segment
stack segment
heap segment


The text segment (often called code segment) is where the compiled code of the program itself resides. When you open some EXE file in Notepad, you can see that it includes a lot of "Gibberish" language, something that is not readable to human. It is the machine code, the computer representation of the program instructions.


Heap and stack in Java
When you create an object using the new operator, for example myobj = new Object();, it allocates memory for the myobj object on the heap.
The stack memory space is used when you declare automatic variables.

for example String myString;, it is a reference to an object so it will be created using new and hence it will be placed on the heap

Reference:
http://ee.hawaii.edu/~tep/EE160/Book/chap14/subsection2.1.1.8.html
http://www.maxi-pedia.com/what+is+heap+and+stack





  • Stack memory

-Size required determined at compile-time, so no need at run time to determine amount of memory to allocate at run time. This is obviously a performance advantage
In contrast, the size of objects allocated on the stack, needs to be known at compile time

-Automatic "clean-up"
your program takes care of stack memory (allocating it & cleaning it up)

-The most important thing about the stack is that you don't need to think much about it. Your program manages it.

-The size of the stack is usually quite small because it's mostly used for local variables (variables that go out of scope pretty soon after they're finished with). The size of the stack is set at compile time and is small enough to be available on any computer, no matter how little RAM it's got

-Stack is where variables declared before runtime are stored.





  • Heap memory

-It's also used very frequently to allocate memory for things whose size is not known until run time. For example, if you had to open a file and read in the data, you don't know how much data exists until run time

-The size of objects allocated on the heap is often not known to the compiler - therefore the programmer must allocate and release the memory specifically.

-If a particular computer has a lot of RAM, why not make use of it?
Therefore the heap consists of memory that can be allocated at run time

-Heap memory is most often used for 'large' things (e.g. the contents of a file) - or for things that need to 'stay around' in memory so that different functions can share the data (in other words, for NON-local variables).

-Heap is where variables created or initialized at runtime are stored.

-On the other hand, heap is an area of memory used for dynamic memory allocation


http://hep.ph.liv.ac.uk/~gwilliam/cppcourse/




  • When you look at your computer memory, it is organized into three segments:

?text (code) segment
?stack segment
?heap segment



The text segment (often called code segment) is where the compiled code of the program itself resides. When you open some EXE file in Notepad, you can see that it includes a lot of "Gibberish" language, something that is not readable to human. It is the machine code, the computer representation of the program instructions. This includes all user defined as well as system functions.




  • What is stack?

The two sections other from the code segment in the memory are used for data. The stack is the section of memory that is allocated for automatic variables within functions.

Data is stored in stack using the Last In First Out (LIFO) method. This means that storage in the memory is allocated and deallocated at only one end of the memory called the top of the stack. Stack is a section of memory and its associated registers that is used for temporary storage of information in which the most recently stored item is the first to be retrieved.






  • What is heap?

On the other hand, heap is an area of memory used for dynamic memory allocation. Blocks of memory are allocated and freed in this case in an arbitrary order. The pattern of allocation and size of blocks is not known until run time. Heap is usually being used by a program for many different purposes.

The stack is much faster than the heap but also smaller and more expensive.









Reverse a String

A typical programming interview question is “reverse a string, in place”. if you understand pointers, the solution is simple. even if you don’t, it can be accomplished using array indices


to reverse the string word by word, in place. for example if our string is “the house is blue”, the return value would be “blue is house the”. the words are reversed, but the letters are still in order


initial: the house is blue
reverse: eulb si esuoh eht
wanted : blue is house the

the solution can be attained by first reversing the string normally, and then just reversing each word.

Reference:
http://www.techinterview.org/post/526374214/reverse-a-string





  • 3-ways to reverse a string in java



First Solution: StringBuffer
The easiest way to reverse a String in Java is by using an instance of the StringBuffer class as it already contains a reverse() method.


Second Solution: Reverse For Loop
You can also reverse a String by traversing it from the end in a traditional for loop. For this approach you can either use a char array which would be somewhat more efficient than by creating a large String pool as a result of continuous concatenation to a String variable.

Third Solution: Recursion

http://www.brilliantsheep.com/3-ways-to-reverse-a-string-in-java/

algorithms & data structures

Understanding how to choose the best algorithm or data structure for a particular task is one of the keys to writing high-performance software
If you start with the wrong algorithm, all the micro-level tuning in the world won't produce optimal results.


  • What is a data structure? What are the types of data structures?

Data structures are used to store data in a computer in an organized fashion.


  • Different types of data structures are:


  1. Arrays: A set of homogeneous values
  2. Records: A set of fields, where each field consists of data belongs to one data type.
  3. Stack- Works in first in last out order. The element inserted first in stack is removed last.
  4. Queue- First in First out order. The element inserted first is removed first.
  5. Linked list- Stored data in a linear fashion.
  6. Trees- Stores data in a non linear fashion with one root node and sub nodes.A data structure where the data is organized in a hierarchical structure.This type of data structure follows the sorted order of insertion, deletion and modification of data items




  • Define a linear and non linear data structure

Linear data
Linked list is an example of linear data storage or structure.
Linked list stores data in an organized a linear fashion. They store data in the form of a list.
A linear data structure traverses the data elements sequentially, in which only one data element can directly be reached.
Ex: Arrays, Linked Lists

Non Linear data structure
Tree data structure is an example of a non linear data structure.
A tree has one node called as root node that is the starting point that holds data and links to other nodes.
Every data item is attached to several other data items in a way that is specific for reflecting relationships.
The data items are not arranged in a sequential structure.
Ex: Trees, Graphs

data structure is a way of organizing data that considers how items are stored and their relationship between them


Reference:
http://java.sun.com/docs/books/performance/1st_edition/html/JPAlgorithms.fm.html
http://www.java2s.com/Code/Java/Collections-Data-Structure/CatalogCollections-Data-Structure.htm
http://www.careerride.com/Data-Structure-Interview-Questions.aspx
http://globalguideline.com/interview_questions/Questions.php?sc=Data_Structures_Interview_Questions_and_Answers_&page=1

B+ tree

In computer science, a B+ tree or B plus tree is a type of tree which represents sorted data in a way that allows for efficient insertion, retrieval and removal of records, each of which is identified by a key. It is a dynamic, multilevel index, with maximum and minimum bounds on the number of keys in each index segment (usually called a "block" or "node"). In a B+ tree, in contrast to a B-tree, all records are stored at the leaf level of the tree; only keys are stored in interior nodes.

Reference:
http://en.wikipedia.org/wiki/B%2B_tree



  • Consider the following B+ tree with degree d = 2,
which means each node except the root has between 2 and 4 keys, as shown in Figure 1. We label
each node as A0,B0,B1,C0,C1 ... so that you can redraw the tree easily

(1)Different applications with different types of queries may require different indexes on a database
in order to have high efficiency. What type of queries, which your application needs a lot, will
make you choose a B+ tree index over a hash table index? Can you give an example of this type
of queries.(2 points)

Solution When an application needs a lot of range queries, a B+ tree index is preferred. For
example, find all the data entries between 20 and 22

(2)Show the B+ tree that would result from deleting the data entry with key 79 from the original
tree. You MUST redraw the whole tree in your result. But you can use just the labels to denote
those nodes that are unchanged. An example of deleting the data entry with key 6 from the original
tree is shown in Figure 2. If you add descriptions about how the B+ tree is changed, you may get
partial credits if your result drawing is not totally correct. (4 points)

(3) Show the B+ Tree that would result from adding the data entry with key 10 from the original
tree. You MUST redraw the whole tree in your result. But you can use just the labels to denote
those nodes that are unchanged. If you add descriptions about how the B+ tree is changed, you
may get partial credits if your result drawing is not totally correct. (4 points)


webcache.googleusercontent.com/search?q=cache:8vRupC7L9OYJ:https://wiki.engr.illinois.edu/download/attachments/227743489/CS411-F2011-Final-Sol.pdf%3Fversion%3D1%26modificationDate%3D1380470739000+&cd=3&hl=tr&ct=clnk&gl=tr&client=firefox-a

Thursday, January 5, 2012

What's the difference between a hub, a switch, and a router?

What's the difference between a hub, a switch,a bridge,a repeater and a router?


  • Hubs

A hub is typically the least expensive, least intelligent, and least complicated of the three.
It's job is very simple - anything that comes in one port is sent out to the others.
Hub: Layer 1device, just a multi-port repeater and works on physical layer


  • Switches

A switch does essentially what a hub does, but more efficiently.
By paying attention to the traffic that comes across it, it can "learn" where particular addresses are.
Switch: Layer 2 device, can work on data link layer


  • Routers

A router is the smartest and most complicated.
a router operates exactly as a switch, learning the location of the computers on its connections and routing traffic only to those computers
Router: Layer 3 device, can work on physical, data and network layer


  • Bridge

Bridge: Layer 2 device, can work on data link layer.

Reference:
http://ask-leo.com/whats_the_difference_between_a_hub_a_switch_and_a_router.html


Switches, and Routers, and Hubs! Oh my!
http://www.youtube.com/watch?v=reXS_e3fTAk&feature=related


  • 1- What is the difference between a hub and a switch?
In the case of a hub, it broadcasts all data to every port. This can make for serious security and reliability concerns, as well as cause a number of collisions to occur on the network.
Switches on the other hand create connections dynamically, so that usually only the requesting port can receive the information destined for it.

http://resources.infosecinstitute.com/ramp-5-levels-top-50-network-administrator-interview-questions/  

What's ITIL?


  • What is ITIL?

ITIL is the most widely adopted approach for IT Service Management

The ITIL best practices provide a systematic and professional approach to the management of IT services, enabling organisations to deliver appropriate services and continually ensure they are meeting business goals and delivering benefits.

Adopting ITIL can offer users a huge range of benefits that include:

improved IT services
reduced costs
improved customer satisfaction through a more professional approach to service delivery
improved productivity
improved use of skills and experience
improved delivery of third party service.


The Information Technology Infrastructure Library (ITIL), is a set of good practices for IT service management (ITSM) that focuses on aligning IT services with the needs of business.

According to ITIL best practices, companies should have one service desk function/department with an overall framework consisting of 10 processes:

Incident management.
Problem management.
Change management.
Release management.
Configuration management.
Service-level management.
Financial management.
IT service continuity management.
Availability management.
Capacity management.


Reference:
http://www.itil-officialsite.com/AboutITIL/WhatisITIL.aspx
http://www.theiia.org/intAuditor/itaudit/archives/2006/june/getting-to-know-itil/
http://en.wikipedia.org/wiki/Information_Technology_Infrastructure_Library




  • ITIL is not explicitly opposed to Agile and DevOps. The Service Design volume supports iterative and incremental design, and mentions Agile and XP. And Service Strategy, with its strong grounding in current management theory, mentions the need for continual feedback between the ITIL service lifecycle stages (Strategy, Design, Transition, Operations, Improvement).

What is ITIL really saying?
I find that the overall ITIL narrative is still sequential, plan-centric, and deterministic.

We should first analytically determine a service strategy and charter the service.
Then create a detailed Service Design Package, and organize resources into development projects that are designed, executed and transitioned in a high-ceremony fashion to operations (as a discrete function).
And when that’s done, continual service improvement can start.
We ensure that everything is documented, and we assume that organizational resources are available and capable of generating and consuming this documentation.
Even with sporadic mentions of Agile and feedback, the deep, repeated narrative is one of planning, control, and documentation.
These anecdotes point out the most fundamental problems with ITIL: its failure to address the critical importance of managing work in process, batch sizes, fast feedback, multitasking, and queues (e.g. processes), resulting in gridlock.

The overall ITIL takeaway is that
The IT pipeline consists of large batches of accurately planned work transitioned between strategy, development, and operations;
Process solves your problems. ITIL enumerates 26, plus the queues implicit in formalized “services” in the catalog;
Multi-tasking and context switching are not concerns with respect to enterprise IT processes;
Risk is mitigated through planning and documentation

ITIL is clear that one does not implement the full set of 26 ITIL processes just because they are in ITIL.But ITIL’s guidance on exactly HOW one might decide which processes to implement is, again, very sequential.
Radical interventions, such as “get rid of all processes,” would be as unwise as going back to the bad old days of last-minute, large-scale release integrations.
https://www.bmc.com/blogs/itil-and-devops-lets-not-paper-over-the-differences/

  • A challenge that many global IT organizations face is, How do we adhere to ITIL processes while teams transform into agile/DevOps way of working? In other words, how do we manage the two seemingly conflicting goals from two different IT organizations, one focusing on the agility of the development and measuring the success of the projects by their throughput time and the other measuring the success by the quality?

We formed a scrum team to address this problem with the theme, “Simplify and automate, keeping the focus on quality, velocity and productivity.” The scrum team had change management process owners and the representatives from all the development technologies. The chart below summarizes the steps followed.

The focus was to demystify the myths about agile as well as ITIL change management processes. At a glance, processes look incompatible with Agile, but the goals are the same. Both aim to add business value incrementally in a continuous manner without disrupting the operations. They are not contradictory but complimentary.


https://devops.com/integrating-itil-change-management-and-devops/

  • ITIL and DevOps: "either/or" or complementary?
While ITSM delivered via ITIL persists, what has emerged in some organizations – often as a backlash to heavyweight ITSM processes – is DevOps.

However, people sometimes forget that DevOps has a very specific scope in software delivery. And not necessarily all software. It relates to applications where speed makes a difference to the business. ITIL is much broader than that and there is still a need to manage services, handle incidents and create service desks that provide great support. So, it’s not about throwing out years of proven and evolving practices in favour of DevOps which is still evolving itself.

It’s not either ITIL or DevOps; they are complementary. ITSM professionals need to understand DevOps and how service management can be adapted to enable and support DevOps because its promise is awesome. To remain competitive businesses need what both ITSM and DevOps have to offer.
https://www.axelos.com/news/blogs/july-2018/itsm-itil-and-devops-an-education-process


  • DevOps vs. ITSM: Which side are you on?
In the IT industry, we often hear such varying opinions around DevOps and IT Service Management. These concepts are typically pitched against each other, as an ‘either/or’ decision. – so we either are an ITIL or a DevOps house
Do we really need to pick a side? To the contrary, we need both. We’re talking about complementary, not competitive boxes. We need to be able to work smarter and quicker, but we also still need process and control.

Misconceptions
1. DevOps can replace ITSM – there’s no need for Services and Ops.
However we see these processes, they represent the key elements of Service Management. They are essential business functions that can’t be ignored.
2. DevOps is entirely about continuous development, integration, and automated delivery
3. ITIL/ITSM involves heavy, onerous documentation and process
4. ITSM/ITIL is only practiced by large enterprise organizations.
https://www.atlassian.com/it-unplugged/devops/devops-vs-itsm-its-not-either-or

  • ITIL vs COBIT
What about COBIT? COBIT stands for Control OBjective of Information and related Technology.
It is a guideline for the management of IT, including input, process, output, and process control.

What relationship between ITIL and COBIT?
ITIL is a best practice or IT management ways to achieve organizational objectives whereas by COBIT you can set the objective to be achieved by an organization in providing IT services.

For simplicity, you can use word "What" to COBIT and "How" to ITIL. It means What the objective? You can answer this question by COBIT. How do we perform to achieve the objective? You can answer this question by ITIL.
http://myitiltutorial.blogspot.com/


  • ITIL Organizational structure
the Incident Manager role has responsibility to coordinate the handling of the incident such as disruption of IT services. While the role Incident Support Group is looking for a solution and resolution activity to normalize the incident.

In general, ITIL provides freedom for the organization to map each role within the ITIL on existing positions in organization structure.
an IT Helpdesk Manager could be the most appropriate position to hold the Incident Manager role in an organization.
http://myitiltutorial.blogspot.com/

  • ISO/IEC 20000

ISO/IEC 20000 is the first international standard for IT service management.It is based on and intended to supersede the earlier BS 15000 that was developed by BSI Group.
originally developed to reflect best practice guidance contained within the ITIL (Information Technology Infrastructure Library) framework (reference needed), although it equally supports other IT service management frameworks and approaches including Microsoft Operations Framework and components of ISACA's COBIT framework.
https://en.wikipedia.org/wiki/ISO/IEC_20000

  • Business Information Services Library
Business Information Services Library (BiSL), previously known as Business Information Service Management Library, is a framework used for information management.
The framework describes a standard for processes within business information management at the strategy, management and operations level.BiSL is closely related to the ITIL and ASL framework, yet the main difference between these frameworks is that ITIL and ASL focus on the supply side of information (the purpose of an IT organisation), whereas BiSL focuses on the demand side (arising from the end-user organisation)
 http://en.wikipedia.org/wiki/Business_Information_Services_Library
  • Systems Development Life Cycle

The systems development life cycle (SDLC), or software development process in systems engineering, information systems and software engineering, is a process of creating or altering information systems, and the models and methodologies that people use to develop these systems.

In software engineering, the SDLC concept underpins many kinds of software development methodologies.
These methodologies form the framework for planning and controlling the creation of an information system:the software development process.


Systems analysis and design
The Systems Analysis and Design (SAD) is the process of developing Information Systems (IS) that effectively use hardware, software, data, processes, and people to support the company's businesses objectives

http://en.wikipedia.org/wiki/Systems_development_life-cycle#Systems_analysis_and_design



  • Systems Development Life Cycle

The SDLC process was designed to ensure end-state solutions meet user requirements in support of business strategic goals and objectives.
In addition, the SDLC also provides a detailed guide to help Program Managers with ALL aspects of IT system development, regardless of the system size and scope. The SDLC contains a comprehensive checklist of the rules and regulations governing IT systems, and is one way to ensure system developers comply with all applicable Government regulations, because the consequences of not doing so are high and wide ranging


The seven-step process contains a procedural checklist and the systematic progression required to evolve an IT system from conception to disposition
1. Conceptual Planning.
2. Planning and Requirements Definition
3. Design
4. Development and Testing
5. Implementation
6. Operations and Maintenance
7. Disposition
http://c2.com/cgi/wiki?SystemsDevelopmentLifeCycle


  • Compliance Risk

Compliance risk is defined as the risk of legal sanctions, material financial loss, or loss to reputation the Bank may suffer as a result of its failure to comply with laws, its own regulations, code of conduct, and standards of best/good practice.

Operational Risk
Operational risk is defined as the risk of loss resulting from inadequate or failed internal processes, people and systems or from external events. The definition includes legal risk but excludes strategic and reputational risk.
http://www.etdb.org/content/operationalandcomplianceriskmanagement



  • The system development life cycle is the overall process of developing, implementing,and retiring information systems through a multistep process from initiation, analysis,design, implementation, and maintenance to disposal.


Initiation Phase: During the initiation phase, the organization establishes the need for a system and documents its purpose.

Development/Acquisition Phase: During this phase, the system is designed, purchased, programmed, developed, or otherwise constructed

Implementation Phase. In the implementation phase, the organization configures and enables system security features, tests the functionality of these features, installs or implements the system, and obtains a formal authorization to operate the system.

Operations/Maintenance Phase. In this phase, systems and products are in place and operating, enhancements and/or modifications to the system are developed and tested, and hardware and software components are added or replaced.

Disposal Phase. In this phase, plans are developed for discarding system information, hardware, and software and making the transition to a new system. The information, hardware, and software may be moved to another system, archived, discarded, or destroyed. If performed improperly, the disposal phase can result in the unauthorized disclosure of sensitive data. When archiving information, organizations should consider the need for and the methods for future retrieval.

https://www.google.com.tr/url?sa=t&rct=j&q=&esrc=s&source=web&cd=10&cad=rja&uact=8&ved=0ahUKEwj9x8n6zMzLAhWKuxQKHUXYDWEQFghOMAk&url=http%3A%2F%2Fcsrc.nist.gov%2Fpublications%2Fnistbul%2Fapril2009_system-development-life-cycle.pdf&usg=AFQjCNG6yrlPn5ZJTQ3M45VSR84h3ySbfQ


Not every project will require that the phases be sequentially executed. However, the phases are interdependent. Depending upon the size and complexity of the project, phases may be combined or may overlap
https://en.wikipedia.org/wiki/Systems_development_life_cycle


  • Security Considerations in the  System Development Life Cycle
The National Institute of Standards and Technology (NIST) Special Publication (SP) 800-64, Security Considerations in the System Development Life Cycle,
has been developed to assist federal government agencies in integrating essential information technology (IT) security steps into their established IT system development
life cycle (SDLC).
http://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-64r2.pdf
  • Governance

The systems and processes concerned with ensuring the overall direction, effectiveness, supervision and accountability of an organization
Management–The act of directing and controlling a group of people for the purpose of coordinating and harmonizing the group toward accomplishing a goal beyond the scope of individual effort
Governance is about vision and organizational direction as opposed to day-to-day management and implementation of policy and programs.
https://www.inphilanthropy.org/sites/default/files/resources/Crucial%20Difference%20Between%20Governance%20%26%20Management-AKT%20LLP-2011.pdf



  • The governing body must govern; that is, it must provide leadership and strategy and must focus on the 'big picture'. Governance is about planning the framework for work and ensuring it is done. As such, it is distinct from management (organising the work) and operations (doing the work). As far as possible, the governing body should therefore steer clear from making managerial decisions and getting involved in the day-to-day implementation of strategy.

http://www.wheel.ie/content/management-vs-governance



  • Governance can be said to be representing the owners, or the interest group of people, who represent a firm, company or any institution. Governance represents the will of these interest groups who manage the company. Governance consists of a governing body, which directs the management on all aspects of a company. It is the governing body that oversees the overall function of an organization.

Management comes only second to the governing body, and they are bound to strive as per the wishes of the governing body.
Governance can be said to set the right policy and procedures for ensuring that things are done in a proper way. On the contrary, management is all about doing things in the proper way.
The responsibilities between governance and management also differ. The responsibilities of governance include choosing top executives, evaluating their performance, authorizing plans/commitments and evaluating the organization’s performance. On the other hand, management has the responsibility for managing and enhancing the overall performance of the organization. Management has the responsibility to implement the systems of governance.
While governance pertains to the vision of an organization, and translation of the vision into policy, management is all about making decisions for implementing the policies.
While board of directors form the core of governance, managers and executives form part of the management.
http://www.differencebetween.net/business/difference-between-management-and-governance/
  • ITIL Basics 1



Service Support is interested in daily operations and short-term process

Service Delivery requires long-term planning

Service Level Management
activities planning and reporting on SLAs

SLA
managing the relationship between service provider and customer
SLA is a primary tool for Service Level Management
SLA enquires quality focus


SLA structures
1-Multilevel
1.1-Corporate Level
1.2-Customer Level
1.3-Service Level

2-Service or Customer Based

  • Service level agreement(SLA)


A written agreement documenting the required levels of service.
The SLA is agreed on by the IT service provider and the business, or the IT service provider and a third-party provider. A service-level agreement (SLA) is a contractual agreement outlining a specific service commitment made between contract parties -- a service provider and its customer


Service Level Agreement (SLA) is an agreement between two parties regarding a particular service. Apparently, SLA must contain quantitative measurements that:

    Represent a desired and mutually agreed state of a service
    Provide additional boundaries of a service scope (in addition to the agreement itself)
    Describe agreed and guaranteed minimal service performance


On the other hand Key Performance Indicators (KPIs) are metrics that target service providers organization objectives – both tactical and strategic. Usually, these metrics are used to measure:

    Efficiency and effectiveness of a service
    Service operation status.

Let us take a few examples that outline the differences. Consider a help desk service.

    SLA examples (for a particular customer): reaction time, resolution time, compliance to agreed deadlines
    KPI examples (organization or service oriented): average reaction time for all customers, service desk employee load, incoming ticket volume trend, required capacity to fulfil SLA promises to customers


https://martinskemme.wordpress.com/2013/05/09/sla-vs-kpi-service-level-agreements-vs-key-performance-indicators/

Using SLA and KPI
Service level agreements and key performance indicators are closely related, but clearly different. An SLA is forward-looking, while KPIs focus on past performance. Your SLA will set benchmarks ahead of time for you to measure performance in the near future. The KPIs you choose will measure the performance of your business against those benchmarks as time passes. Your SLA could even specify which performance indicators will be used.
https://yourbusiness.azcentral.com/sla-vs-kpi-16559.html


  • A service level target is a key element of a service level agreement between you as a service provider and an end user customer. Service level targets measure your performance as a service provider and are designed to avoid disputes between the two parties based on the misunderstanding.


Example: Service Level Targets
  The incidents have a response duration target of three days and a response compliance target of 95%. This means that if the service provider responds to both of these incidents in three days or less, they meet the response duration target. If they meet the response duration target at least 90% of the time, they meet the response compliance target and the incident response service level target is considered to be in compliance.
The incidents have a resolution duration target of five days and a resolution compliance target of 90%. This means that if the service provider resolves both of these incidents in five days or less, they meet the resolution duration target. If they meet the resolution duration target at least 90% of the time, they meet the resolution compliance target and the incident resolution service level target is considered to be in compliance.
The service request has a delivery duration target of five days. This means that if the service provider can deliver the service request in five days or less, they meet the delivery duration target. If they meet the delivery duration target at least 90% of the time, they meet the compliance target and the service request delivery service level target is considered to be in compliance.

The service level agreement has an overall compliance target that is inherited from the service level package. This target is evaluated using all met and not met data from the duration targets.
This example is based on two incidents and one service request, which were all submitted by a single organization and are all covered under the same service level agreement.

https://help.ivanti.com/ht/help/en_US/ISM/2017/Content/ServiceDesk/ServiceLevelMgmt/Creating_Service_Level_Target.htm


  • service-level objectives (SLO)

Each SLO corresponds with a single performance characteristic relevant to the delivery of an overall service. Some examples of SLOs would include: system availability, help desk incident resolution time and application response time.
http://expertanswercenter.techtarget.com/eac/knowledgebaseAnswer/0,295199,sid63_gci1175490,00.html



  • A service level objective (SLO) is a key element of a service level agreement (SLA) between a service provider and a customer.


SLOs are agreed as a means of measuring the performance of the Service Provider

SLOs are outlined as a way of avoiding disputes between the two parties based on misunderstanding


The SLA is the entire agreement that specifies what service is to be provided

SLOs are specific measurable characteristics of the SLA such as availability, throughput, frequency, response time, or quality.

The term SLO is deprecated in ITIL V3 to Service Level Target


http://en.wikipedia.org/wiki/Service_level_objective

What are the stages of the ITIL lifecycle?
Service Strategy
Service Design
Service Transition
Service Operation
Continual Service Improvement

http://www.itil-officialsite.com/Qualifications/ITILV3QualificationLevels/ITILlifecyclestream.aspx
http://www.itframeworks.org/wiki/Category:ITIL_life_cycle_phases

  • Ishikawa diagram

Ishikawa diagrams (also called fishbone diagrams, herringbone diagrams, cause-and-effect diagrams, or Fishikawa) are causal diagrams created by Kaoru Ishikawa (1968) that show the causes of a specific event

Common uses of the Ishikawa diagram are product design and quality defect prevention, to identify potential factors causing an overall effect

http://en.wikipedia.org/wiki/Ishikawa_diagram



  • Fishing For Solutions: Ishikawa

anyone with IT Infrastructure Library® (ITIL®) certification has heard of Ishikawa or "fishbone" diagrams, usually in the context of Problem Management. Aside from knowing it is a root-cause analysis tool, most have no idea how to use it.

An Ishikawa diagram is a graphical method for root cause analysis. First documented by Kaoru Ishikawa in the 1960s, it is used to this day as a cornerstone of continuous service improvement. Because of its shape, it is also known as the fishbone diagram. Another name for this technique is cause-and-effect diagramming

http://www.itsmsolutions.com/newsletters/DITYvol5iss42.htm
  • Kepner-Tregoe Problem Analysis


Kepner Tregoe decision making is a structured methodology for gathering information and prioritizing and evaluating it.

There are four basic steps when decision making Kepner Tregoe style:

Situation appraisal - is used to clarify the situation, outline concerns and choose a direction

Problem analysis - here the problem is defined and it's root cause determined

Decision analysis - alternatives are identified and a risk analysis done for each

Potential problem analysis - the best of the alternatives is further scrutinized against potential problems and negative consequences and actions are proposed to minimize the risk.


References:
http://www.decision-making-confidence.com/kepner-tregoe-decision-making.html
http://martin-bell.suite101.com/kepnertregoe-problem-analysis-a95010.



  • Thinking About Problems: Kepner-Tregoe

The IT Infrastructure Library™ (ITIL®) describes the steps of the root cause analysis method called Kepner-Tregoe - Define and Describe the Problem, Establish possible causes, Test the most probable cause, and Verify the true cause.

The ITIL mentions Kepner-Tregoe, but does not give enough detail to use it to solve difficult problems.

http://www.itsmsolutions.com/newsletters/DITYvol6iss19.htm
  • What’s an IT service?

The ITIL v3 framework describes a service as “a means of delivering value to customers by facilitating outcomes customers want to achieve without the ownership of specific costs and risks.”
There are three assumptions implicit in this service definition.

    IT organizations provide IT services that provide outcomes (end results) the customer desires
    Service delivery produces positive results (value) for the customer
    An IT organization (not the customer) owns the service and is responsible for its delivery

What types of IT services are there?
general IT service categories.

Business process services for performing repeatable activities that achieve a concrete goal for the customer. IT business process services usually follow a process that has specific starting and ending points, such as entering orders, running on-demand processes, or updating employee information.

IT skill services that use internal or external IT resources to design, build, or run a service for the customer, including programming, trouble-shooting, installing, and operating the service.

Application services, including installing, configuring, and providing access to applications.

Infrastructure services, such as building, maintaining, and configuring network infrastructure components (ex., file servers, Web servers, telecommunication lines) for accessing applications or other services

How ITIL service delivery evolved
In ITIL v2, IT service management was separated into two core disciplines:
Service support which includes service desk and incident management, problem management, change management, release management, and configuration managemen
Service delivery which includes service level management, capacity management, contingency planning, availability management, and IT financial management

In ITIL v2, service delivery is a separate discipline from service support.
The idea of service delivery evolved in ITIL v3 (the latest standard) with the introduction of the IT service lifecycle that focuses on these five core areas

    Service strategy
    Service design
    Service transition
    Service operation
    Continual service improvement

ITIL service delivery occurs when an IT organization performs an IT service for a customer (business process, IT skills, application, or infrastructure service) that the customer values and desires and that the customer cannot or does not want to own and perform itself.  Services are designed, deployed, delivered, improved, and retired by using the ITIL v3 service lifecycle.

https://www.bmc.com/blogs/itil-service-delivery/

  • Incident

  • Any event that is not part of the standard operation of service
    any event that causes, or may cause, an interruption to the quality of service.
    any event that causes, or may cause a reduction in the quality of service.

  • Incident vs Problem
Managing an Incident means fixing the system and to restore the service as soon as possible. While managing a Problem means finding the underlying root causes so that the Incidents do not reoccur.
http://www.myitstudy.com/blog/2013/09/incident-vs-problem-itil-concepts/


  • Problem

  • The undiagnosed root cause of one or more incidents.


  • Service desk

  • A function that provides the vital day-to-day contact point between customers, users, IT services, and third-party organizations
    A resolution is a way of looking at, explaining and writing up a problem in a systematic fashion.


  • Service request

  • Requests for new or altered service.
    The types of service requests vary between organizations
    requests for information (RFI)
    requests for change (RFC)



  • Solution

  • Also known as a permanent fix
    An identified means of resolving an incident or problem that provides a resolution of the underlying cause.



    • Resolution vs. Solution

    • a resolution as "an explanation, as of a problem or puzzle," while a solution can be thought of simply as the answer to a problem
      An identified means of resolving an incident or problem that provides a resolution of the underlying cause.



      • Workaround

      • An identified means of resolving a particular incident, which allows normal service to be resumed,
        but does not actually resolve the underlying cause that led to the incident in the first place.


      • Service

      • A business function deliverable by one or more IT service components (hardware, software, and facility) for business use.


      • Service catalog
      • A comprehensive list of services, including priorities of the business and corresponding SLAs


        What type of information would you store in the Service Catalogue?
        The Service Catalogue contains a list of services that an organization provides, often to its employees or customers



        Reference:
        http://itsm.the-hamster.com/itsm4.htm


      •  Break/fix
      •  The term break/fix refers to the fee-for-service method of providing information technology services to businesses. Using this method an IT solution provider performs services as needed and bills the customer only for the work done. The service may include repairs, upgrades or installation of systems, components, peripheral equipment, networking or software

         managed services
         The alternative to break/fix is managed services, which is a service plan, where the customer pays a fixed amount for services covered in the plan and pays additional amounts for repairs or other work which is not covered in the plan

         https://en.wikipedia.org/wiki/Break/fix
      • Obsolescence can present itself in two ways; the item in question is no longer suitable for current demands, or is no longer available from the original manufacturer
      http://www.cmcauk.co.uk/what-is-obsolescence-management/

      • Obsolescence can be simply put as the transition from availability from the original manufacturer to unavailability.
      Companies worldwide receive thousands of product change notifications (PCNs) and end-of-life (EOL) notifications daily.
      Immediately after the information about discontinuation has been announced from its Original manufacturer, obsolescence of a product starts. This is usually done by a product discontinuance notice (PDN) or a message about the EOL. Also an announcement for a life-time-buy (LTB) or a PCN could be the start of obsolescence.
      http://www.plantengineering.com/single-article/seven-steps-in-predicting-equipment-lifecycle-using-obsolescence-management/547c3ac6da4cc7097fc02cea10c097cf.html
      • Configuration Management Tools

      Configuration Management Tools are utilities designed to reduce the workload of administering multiple computers. Configuration Management Tools allow administrators to remotely apply updates and patches to operating systems and applications. Configuration Management Tools remove the need for many desk-side visits
      http://www.solarwinds.com/it-management-glossary/what-is-configuration-management-tools.aspx



      • Configuration management

      Configuration management (CM) is the detailed recording and updating of information that describes an enterprise's hardware and software. It is a process for establishing and maintaining consistency of a product's performance,functional and physical attributes with its requirements, design and operational information throughout its life
      The CM process is widely used by military engineering organizations to manage complex systems, such as weapon systems, vehicles, and information systems. Outside the military, the CM process is also used with IT service management as defined by ITIL
      http://en.wikipedia.org/wiki/Configuration_management



      • Configuration Management (ITSM)

      Configuration Management (CM) is an Information Technology Infrastructure Library (ITIL) version 2 and an IT Service Management (ITSM) process that tracks all of the individual Configuration Items (CI) in an IT system which may be as simple as a single server, or as complex as the entire IT department.
      In large organizations a configuration manager may be appointed to oversee and manage the CM process.
      In ITIL version 3, this process has been renamed as Service Asset and Configuration Management.
      http://en.wikipedia.org/wiki/Configuration_Management_(ITSM)


      • An information security management system (ISMS) is a set of policies and procedures for systematically managing an organization's sensitive data. The goal of an ISMS is to minimize risk and ensure business continuity by pro-actively limiting the impact of a security breach. 
      http://whatis.techtarget.com/definition/information-security-management-system-ISMS

      • What is an ISMS?
      An ISMS is a systematic approach to managing sensitive company information so that it remains secure. It includes people, processes and IT systems by applying a risk management process.
      http://www.iso.org/iso/iso27001

      • What is Information Security Management from an ITIL perspective?
      The Information Security Management process includes:
      A policy
      An Information Security Management System (ISMS)
      Structure and controls
      Risk Management
      Communication strategy
      There are industry standards that can be utilised in order to improve Information Security such as ISO 27001 which an international standard, made up of five elements:
      Control
      Plan
      Implement
      Evaluate
      Maintain
      http://www.itilnews.com/index.php?pagename=What_is_Information_Security_Management_from_an_ITIL_perspective

      • Why the new ITIL 2011 Edition?

      "ITIL 2011 is an update, not a new version". No entirely new concepts have been added, but the aim of the update is to "resolve errors and inconsistencies in the text and diagrams across the whole suite".
      ITIL 2007 vs. ITIL 2011: Changes in Service Strategy
      ITIL 2007 vs. ITIL 2011: Changes in Service Design
      ITIL 2007 vs. ITIL 2011: Changes in Service Transition
      ITIL 2007 vs. ITIL 2011: Changes in Service Operation
      ITIL 2007 vs. ITIL 2011: Changes in Continual Service Improvement (CSI)
      http://wiki.en.it-processmaps.com/index.php/ITIL_2011#Why_the_new_ITIL_2011_Edition.3F

      • Microsoft Operations Framework

      Microsoft Operations Framework (MOF) 4.0 provides relevant, practical, and actionable guidance for today's IT pros.
      https://technet.microsoft.com/en-us/solutionaccelerators/dd320379.aspx


      • The handwritten comments in the manual were indicative of the fact that in the past, the system developer did not document in detail, information of actual operations and that know-how was highly individualized.”

      https://customers.microsoft.com/Pages/CustomerStory.aspx?recid=1492


      • MOF: It is practical guidance for everyday IT practices and activities, helping users establish and implement reliable, cost-effective IT services.

      ITIL: A framework of best practice techniques to facilitate the delivery of high-quality information technology services. ITIL outlines an exhaustive set of management procedures to support organizations in achieving both value and quality in IT operations.
      ITSM: It is an approach that combines proven methods such as process management and known in-dustry best practices, in the area of IT Service Management, to enable any organization to de-liver quality IT services that satisfy customer business needs and achieve performance targets specified within service level agreements.
      https://social.technet.microsoft.com/Forums/en-US/e5fb275c-f27f-4209-af6d-65f317059c84/mof-vs-itil-vs-itsm?forum=MOF4
      • Cross Reference ITIL V3 and MOF 4.0 - Microsoft

      both frameworks follow a lifecycle approach
      ITIL uses five elements for its lifecycle: Strategy, Design, Transition, Operation, and Continual Improvement, which brings it close to the PDCA model.
      MOF’s lifecycle core consists of only three phases: Plan, Deliver, and Operate, with one underlying layer (Manage) covering the components that apply to all lifecycle phases.

      Both ITIL and MOF use processes and functions as building blocks
      ITIL labels most of its components as processes and activities (ITIL has 26 Processes and four functions), while MOF is almost entirely based on Service Management Functions (SMFs), each SMF havinga set of key processes, and each process having a set of key activities.

      In both frameworks, control of the lifecycle progress runs through a number of transition milestones.
      These milestones have been made very explicit in MOF’s Management Reviews (MRs).

      Both frameworks apply the PDCA improvement approach throughout the lifecycle.
      MOF, like ITIL, offers best-practice guidance that can be followed in full but also in part.
      The “ITSM language” is quite consistent between both frameworks

      A remarkable difference is the way customer calls are handled: ITIL separates incident calls from operational service requests and change requests, and MOF combines several customer request types in a single Customer Service SMF

      ITIL and MOF also use very different role sets and role titles.
      ITIL works from the best practices documented in each phase, where MOF starts from a structured organization perspective.

      An area of significant difference can be found in the approach the two frameworks take to technology.
      A key element of ITIL is that it is both vendor- and solution-agnostic—meaning, the practices encouraged by ITIL can be applied across the board regardless of the underlying technology. The result is that ITIL focuses on the management structure that makes IT successful, rather than on the technology.
      Microsoft has created MOF to provide a common management framework for its platform products, although MOF can easily be used for other platforms.

      Another difference is that ITIL is available in five core books that are sold through various channels, while MOF is available on the internet for free, offering practical guidance in various formats
      ITIL offers a complex certification scheme for professionals, where Microsoft currently limits its certification for MOF to just one MOF Foundation examination

      Main focus of ITIL is on the “what,” where MOF concentrates on the “what” as well as the “how.”

      IT Service Management is the management of all people, processes, and technology that cooperate to ensure the quality of live IT services, according to the levels of service agreed with the customer.
      The essential concept here is “IT service”: the delivery of information processing capabilities in a defined quality (for example, capacity, performance, security, and availability), using a combination of hardware, software, networks, people, documentation and facilities

      ITIL and MOF are two of the frameworks available to the IT service organization or department aiming for the highest quality at the lowest cost

      Comparing Frameworks
      When analyzing management frameworks, we can compare various characteristics
      First of all, the approach is important: the way the framework is perceiving reality, the elements that are taken into perspective, and their coherence.
      Second, the modeling technique is of interest: the way reality is described in tangible structures (for example, IDEF0 schemes, process flows, practice documentation).
      Another important consideration is the activation and implementation of the framework: the way the framework is deployed, (for example, adopt or adapt, incremental, phased, step-by-step, big-bang).
      the support structure is of interest: the automated instruments available to support the method, such as schemes, tools, documents, and templates.

      A number of management paradigms have proven to be essential to IT Service Management. These paradigms are used in the comparison of ITIL and MOF.
      A widely accepted paradigm for defining the core focus areas in managing organizational improvement is Process - People - Technology (PPT).
      An important consequence of applying this paradigm is the separation of functions from processes.

      A process is a structured set of activities designed to accomplish a defined objective in a measurable and repeatable manner, transforming inputs into outputs. Processes result in a goal-oriented change, and utilize feedback for self-enhancing and self-corrective actions.
      MOF defines a process as interrelated tasks that, taken together, produce a defined, desired result.

      A function is an organizational capability, a combination of people, processes (activities), and technology, specialized in fulfilling a specific type of work, and responsible for specific end results. Functions use processes.
      MOF doesn’t offer a definition for function alone; rather, it defines the term service management function (SMF) as a core part of MOF.

      A second important and widely applied approach to the management of organizations is the paradigm of Strategy - Tactics - Operations.
      At a strategic level an organization manages its long-term objectives in terms of identity, value, relations, choices and preconditions.
      At the tactical level these objectives are translated into specific goals that are directed and controlled.
      At the operational level these goals are then translated into action plans and realized.

      Applying the widely accepted control mechanism of Separation of Duties (SoD), also known as Separation of Control (SoC), we find a domain where information system functionality is specified (Information Management), and another domain where these specifications are realized (Technology Management). The output realized by the Technology Management domain is the operational IT service used by the customer in the Business domain

      The combination of STO and SoD delivers a very practical blueprint of responsibility domains for the management of organizations: the Strategic Alignment Model Enhanced (SAME)
      This blueprint provides excellent services in comparing the positions of management frameworks, and in supporting discussions on the allocation of responsibilities—for example, in discussions on outsourcing


      A widely accepted approach to continual improvement is Deming’s Plan-Do-Check-Act Management Cycle. This implies a repeating pattern of improvement efforts with varying levels of intensity. The cycle is often pictured, rolling up a slope of quality improvement, touching it in the order of P-D-C-A, with quality assurance preventing it from rolling back down

      The IT service lifecycle of MOF is composed of three ongoing phases and one foundational layer that operates throughout all of the other phases:
      Plan phase: plan and optimize an IT service strategy in order to support business goals and objectives.
      Deliver phase: ensure that IT services are developed effectively, deployed successfully, and ready for Operations.
      Operate phase: ensure that IT services are operated, maintained, and supported in a way that meets business needs and expectations.
      Manage layer: the foundation of the IT service lifecycle. This layer is concerned with IT governance, risk, compliance, roles and responsibilities, change management, and configuration. Processes in this layer apply to all phases of the lifecycle.

      Each phase of the IT service lifecycle contains Service Management Functions (SMFs) that define and structure the processes, people, and activities required to align IT services to the requirements of the business.Each SMF is anchored within a lifecycle phase and contains a unique set of goals and outcomes supporting the objectives of that phase.
      Each SMF has three to six key processes. Each SMF process has one to six key activities.

      For each phase in the lifecycle, Management Reviews (MRs) serve to bring together information and people to determine the status of IT services and to establish readiness to move forward in the lifecycle. MRs are internal controls that provide management validation checks, ensuring that goals are being achieved in an appropriate fashion, and that business value is considered throughout the IT service lifecycle


      the approach
      Both frameworks are best characterized as “practice frameworks” and not “process frameworks.”
      both frameworks use a lifecycle structure at the highest level of design

      The modeling techniques
      both frameworks use extensive text descriptions, supported by flowcharts and schemes

      The activation and implementation
      Both frameworks speak of “guidance,” leaving the actual decisions on how to apply it to the practitioner.
      ITIL has been advocating the “Adopt and Adapt” approach

      Differences

      Development:
      The approach taken in MOF is heavily based on project management principles, emphasizing the project nature of this lifecycle phase.
      Call handling: ITIL V2 showed a combined handling of incidents and service requests in one process, but in ITIL V3 incident restoration and service request fulfillment were turned into two separately treated practices. MOF on the other hand stays much closer to the ITIL V2 practice, combining several customer requests in one activity flow, for incident restoration requests, information requests, service fulfillment requests, and new service requests. If the request involves a new or non-standard service, a separate change process can be triggered.
      MOF’s lifecycle comprises only three phases: Plan, Deliver, Operate, with one underlying layer covering the components that apply to all lifecycle phases. As a consequence, a number of practices are applied all over the MOF lifecycle, but in ITIL these are mostly described in one or a few lifecycle phases. As an example, risk management is part of the Manage layer in MOF, but in ITIL it is mainly restricted to Strategy and Continual Improvement. The same goes for change and configuration management: throughout the MOF lifecycle but in ITIL these are concentrated in the Transition phase.


      STO and SoD, in SAME
      Strategic levels are covered in both frameworks. ITIL documents its best practices on long-term decisions in the Strategy phase. MOF does the very same in the Plan phase, and supports this in the Manage layer.
      Tactical levels are covered in a similar way: ITIL concentrates these in the Service Design and CSI phase, and MOF describes its tactical guidance in the Deliver phase, in the Manage layer and in the Operate phase (Problem Management).
      Operational levels are covered mainly in a single phase in both frameworks; ITIL has its Service Operation phase, and MOF has its Operate phase.

      In practice, only very few organizations apply the full guidance of either framework. Most often, organizations start out with those components that address the biggest problems.
      Both ITIL and MOF are reference frameworks and not implementation models.


      Like the practices in both frameworks, from a 10,000 feet viewpoint the framework-typical structures do not differ much. Both frameworks use structures like Service Level Agreements (SLAs), Operational Level Agreements (OLAs), Underpinning Contracts (UCs), Configuration Items (CIs), Configuration Management Systems (CMSs) and Configuration Management Databases (CMDBs), Definitive Software Libraries (DSLs), a Change Schedule (CS in ITIL) or a Forward Schedule of Change (FSC in MOF), Known Error Databases (KEDs), Service Catalogues (SCs) and Service Portfolios (SPs), Business Continuity Plans (BCPs), Business Impact Analyses (BIAs), Post Implementation Reviews (PIRs), Standard Operating Procedures (SOPs in ITIL) or Operations Guides (OGs in MOF), RACI, and use cases.
      Of course some structures are mentioned specifically in one framework and not in the other: ITIL uses a Capacity Management Information System (CMIS), an Information Security Management System (ISMS), and MOF uses an Issue-Tracking Database

      ITIL and MOF follow the same definition of “process”:
      ITIL: A structured set of activities designed to accomplish a specific objective.
      MOF: Interrelated tasks that, taken together, produce a defined, desired result.

      : ITIL works from the best practices documented in each phase, where MOF starts from the organization perspective. As an example, ITIL defines a Finance Manager responsible for the Financial Management process, and MOF knows financial managers, who in fact are the financial experts active in managing finances.

      Table A-1. Main Focus of MOF Framework Components at Strategic, Tactical, or Operational Level
      Table A-2. Main Focus of ITIL Framework Components at Strategic, Tactical, or Operational Level

      Appendix B: Mapping of Processes, Activities, Functions, and Other Elements
      The following tables present the mapping of MOF v4 versus ITIL V3.
      The section of the table shows the ITIL components and explains where these can be found in MOF
      Table B-1. How MOF Covers ITIL Content
      The second section shows the components that are exclusive to MOF, and illustrates where these can be found in ITIL.
      Table B-2. How ITIL Covers MOF Content


      https://www.google.com.tr/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwiOyNS16crNAhUEaxQKHT71BpAQFggcMAA&url=http%3A%2F%2Fdownload.microsoft.com%2Fdownload%2FA%2F2%2F0%2FA20F5FEB-1719-4B2F-8FFC-A0A14318CD2D%2FCross%2520Reference%2520ITIL%2520V3%2520and%2520MOF%25204.0.docx&usg=AFQjCNEy5ReIrSI5nsDgoJVVjxyohOJNgQ


      • ITIL® 2011 vs. ITIL V3 in 2.5 minutes: The differences between ITIL 2011 and ITIL 2007 (ITIL V3) at a glance.

      http://demo.it-processmaps.com/itil_2011_en/itil-process-map-2011.html

      • ISO 27001 vs. ITIL: Similarities and differences
      ISO 27001 consists of 11 clauses and 114 generic security controls grouped into 13 sections (the Annex A).


      https://advisera.com/27001academy/blog/2016/03/07/iso-27001-vs-itil-similarities-and-differences/


      • ServiceNow specializes in IT services management (ITSM), IT operations management (ITOM) and IT business management (ITBM). It offers real-time communication, collaboration and resource sharing covering IT, human resources, security, customer service, software development, facilities, field service, marketing, finance and legal enterprise needs.

      https://www.datamation.com/cloud-computing/50-leading-saas-companies.html


      • ServiceNow ITOM Enterprise delivers a comprehensive and integrated set of ITOM capabilities that build seamlessly on your existing ServiceNow  IT Service Management (ITSM) investment

      Discovery helps create a single system of record for IT infrastructure spanning data centers and clouds
      Event Management reduces event floods from monitoring tools and provides a single dashboard to proactively identify service issues
      Operational Intelligence proactively identifies anomalous behavior in the IT infrastructure before it causes service outages
      Orchestration automates IT processes, eliminates manual tasks, and remediates service issues
      Service Mapping maps the relationships between IT components and business services in dynamic environments
      Cloud Management delivers cloud resources through self-service, reducing business risk and managing cost
      https://www.servicenow.com/content/dam/servicenow-assets/public/en-us/doc-type/resource-center/data-sheet/ds-itom-enterprise.pdf


      • ServiceNow Service Management (ITSM) provides a modern service management  solution in the cloud.


      Incident Management and Problem Management
      Restore service after an unplanned interruption by investigating the root cause of
      an incident or escalating it to a major incident to quickly resolve critical service
      disruptions

      Change Management
      Control IT change processes to minimize the risks and costs associated with rapid
      unplanned changes

      Configuration Management Database (CMDB)
      Consolidate disparate IT management systems into a single system of action, allowing
      IT to see exactly what assets are in your IT environment, what services they are related
      to, and how they’re functioning at all time

      Asset Management
      Track the financial, contractual, and inventory details of hardware, devices, and
      virtual assets from purchase through disposal

      Request Management and Knowledge Management
      Give end users a modern, omni-channel way to interact with IT and other shared
      services groups at any time through any device—enable self-help, request items
      or services, and collaborate with others. Capture and package knowledge from
      across the organization and make it readily available for shared or private use by
      IT and employees

      Service Level Management
      Set business expectations and gain visibility into your IT team’s service commitments
      and performance.

      https://www.servicenow.com/content/dam/servicenow-assets/public/en-us/doc-type/resource-center/data-sheet/ds-itsm.pdf
      • BMC Service Desk
      Enable comprehensive, best practice based incident and problem management processes via intuitive, easily adopted, enterprise scale technology
      http://www.bmc.com/products/product-listing/22743834-121272-1370.html

      BMC Remedy ITSM: Accessing the BMC Service Process Management Model
      • IT Information Library (ITIL) describes best practices at a high level. It provides guidance on steps to take, processes, and workflows. Organizations are then free to implement the work-level procedures for daily activities that apply to their requirements.
      The BMC Service Management Process Model illustrates how ITIL processes map to work instructions performed in the BMC Remedy IT Service Management (BMC Remedy ITSM) applications.
      The BMC Service Management Process Model describes a set of predefined processes for the delivery and support of information technology (IT) services. The processes described by the BMC Service Management Process Model are aligned with ITIL good practices.
      https://docs.bmc.com/docs/itsm81/bmc-service-management-process-model-229802391.html
      • Dell OpenManage Systems Management
      Nowhere is this more evident than with infrastructure management tools, where complexity is driving high cost of services attach, deployment, integration, and sustainment.
      http://www.dell.com/content/topics/global.aspx/sitelets/solutions/management/en/openmanage?c=us&l=en&cs=555

      • CA Service Desk Manager
      CA Service Desk Manager and ITIL best practice have enabled Manpower to manage more incidents with the same resource resulting in improved staff productivity and user satisfaction.
      http://www.ca.com/us/service-desk-software.aspx
      • IBM Maximo
      This asset management software provides insight for all of your enterprise assets, their conditions and work processes, for better planning and control.
      http://www-01.ibm.com/software/tivoli/products/maximo-asset-mgmt

      • IBM Tivoli
      IBM Tivoli provides Integrated Service Management software to help manage business value of your IT infrastructure
      http://www-01.ibm.com/software/tivoli/


      • FrontRange ITSM Software
      FrontRange ITSM software brings together a comprehensive set of service and lifecycle products designed to improve service levels and productivity, deliver best practices and standardization, and align IT to the delivery of business value
      http://www.frontrange.com/itsm-software



      • HP Service Manager Center
      HP Service Manager is scalable, robust software that’s core to the HP IT Service Management (ITSM) solution with incident, change, and other management process standardization, quality service delivery and support, and enhanced agent and end-user support
      http://www8.hp.com/us/en/software/software-product.html?compURI=tcm:245-937082

      • HP Universal CMDB(Configuration Management Database)
      HP Universal Configuration Management Database (UCMDB) software stores, controls, and manages software and infrastructure components along with associated relationships and dependencies. It provides unparalleled infrastructure visibility that shows how components are related for consistent and reliable delivery of IT and business services. This visibility improves and simplifies change control to avoid service disruptions and better track, manage, and control IT infrastructures
      http://www8.hp.com/us/en/software/software-product.html?compURI=tcm:245-936985

      • HP Operations Manager
      HP Operations Manager is an IT consolidation software that consolidates and correlates fault and performance events across your entire physical and virtual IT infrastructure to identify the causes of event storms. With HP Operations Manager software you can achieve faster time to resolution when you see system and performance events occurring throughout your IT infrastructure and can identify the cause.
      http://www8.hp.com/us/en/software/software-product.html?compURI=tcm:245-936955


      • HP Network Node Manager
      Network Node Manager i software provides real-time network monitoring and network incident management. Unified network fault, availability, and performance monitoring allows you to minimize network downtime and reduce costs at the same time that you increase network performance.
      http://www8.hp.com/us/en/software/software-product.html?compURI=tcm:245-936950

      • HP Performance Manager
      HP Performance Manager software is a web-based analysis and visualization tool that analyzes performance trends of applications, systems, and services. Monitor system performance in real time and track historical trends so you can manage and optimize performance of mission-critical servers, both physical and virtual.
      http://www8.hp.com/us/en/software/software-solution.html?compURI=tcm:245-937022&pageTitle=performance-manager-software


      • HP Openview
      HP OpenView was the former name for a Hewlett Packard product family that consists of network and systems management products. In 2007, HP OpenView was rebranded when it became part of the HP Software Division. HP OpenView software provided large-scale system and network management of an organization's IT infrastructure
      http://en.wikipedia.org/wiki/HP_OpenView

      • HP Software Business Availability Center (BAC)
      HP Business Availability Center on SaaS (BAC) is an offering that enables monitoring of the health of your business services and applications from the user point of view.
      http://www8.hp.com/us/en/software/software-product.html?compURI=tcm:245-936116

      • HP OPERATION ORCHESTRATION WORKFLOW DESIGNER
      HP Operations Orchestration (HP OO) software automates the tasks and processes in the data center using workflows that help IT teams execute change with greater speed, quality, and consistency.
      http://www8.hp.com/us/en/software/software-product.html?compURI=tcm:245-936143

      • HP Project and Portfolio Management Center
      HP Project and Portfolio Management (HP PPM) Center integrates and unify the activities that manage project execution within the organization—demand management, financial, time and resource, project and program, and portfolio management.
      http://www8.hp.com/us/en/software/software-product.html?compURI=tcm:245-937033

      • HP Application Lifecycle Management
      Key features
      Automation and unified management instead of loosely coupled point tools
      Technology-agnostic support for more than 70 application environments
      Methodology-agnostic coverage of traditional and Agile methods in one ALM solution
      Project ready, enterprise scale for a team of ten or tens of thousands
      Integrated capabilities to manage applications from planning to retirement
      http://www8.hp.com/us/en/software/software-solution.html?compURI=tcm:245-937026


      • HP IT Service Management Reference Model

      The HP ITSM Reference Model is a high-level, fully integrated IT process relationship map (See Figure
      1). It has proven to be invaluable to companies around the world as they seek to understand people,
      process, and technology problems and consider possible solutions. As a reference tool, the model
      provides a coherent representation of IT processes and a common language, making it useful in
      initiating a meaningful dialogue between all parties interested in IT process requirements and solutions.
      The HP ITSM Reference Model is flexible. As such, it can be applied to any IT enterprise, regardless of
      whether it is a business, governmental entity, or educational institution
      ftp://ftp.hp.com/pub/services/itsm/info/itsm_rmwp.pdf

      • The Microsoft Solutions Framework (MSF) is an adaptable approach for successfully delivering technology solutions faster, with fewer people and less risk, while enabling higher quality results. 

      MSF focuses on:
          Aligning business and technology goals
          Establishing clear project goals, roles, and responsibilities
          Implementing an iterative, milestone/checkpoint-driven process
          Managing risk proactively
          Responding to change effectively
      https://msdn.microsoft.com/en-us/library/jj161047(v=vs.120).aspx
      • Microsoft System Centre 2012
      System Center 2012 helps you manage your IT environments across traditional datacenters, private and public clouds, client computers, and devices
      http://technet.microsoft.com/en-us/systemcenter/hh880681

      • MS System Center Operations Manager(SCOM)
      System Center 2012 – Operations Manager provides infrastructure monitoring that is flexible and cost-effective, helps ensure the predictable performance and availability of vital applications, and offers comprehensive monitoring for your datacenter and cloud, both private and public.
      http://technet.microsoft.com/library/hh205987

      • Microsoft System Centre 2012 Configuration Manager
      Microsoft System Center 2012 Configuration Manager provides a comprehensive solution for change and configuration management for the Microsoft platform. System Center 2012 Configuration Manager lets you perform tasks such as the following:
      Deploy operating systems, software applications, and software updates.
      Monitor and remediate computers for compliance settings.
      Monitor hardware and software inventory.
      Remotely administer computers.
      System Center 2012 Configuration Manager collects information in a Microsoft SQL Server database, which allows you to run queries and produce reports to consolidate information throughout the organization. You can use Configuration Manager to manage a wide range of Microsoft operating systems, including client platforms, server platforms, and mobile devices.
      http://technet.microsoft.com/library/gg682129

      • System Center 2012 - Data Protection Manager
      System Center 2012 – Data Protection Manager (DPM) enables disk-based and tape-based data protection and recovery for servers such as SQL Server, Exchange Server, SharePoint, virtual servers, file servers, and support for Windows desktops and laptops. DPM can also centrally manage system state and Bare Metal Recovery (BMR)
      http://technet.microsoft.com/library/hh758173



      • System Center 2012 - Orchestrator

      Orchestrator is a workflow management solution for the data center. Orchestrator lets you automate the creation, monitoring, and deployment of resources in your environment
      http://technet.microsoft.com/library/hh237242

      Orchestrator – “Orchestrator is a workflow management solution for the data center. Orchestrator lets you automate the creation, monitoring, and deployment of resources in your environment.”
      Service Manager – “Service Manager provides an integrated platform for automating and adapting your organization’s IT service management best practices, such as those found in Microsoft Operations Framework (MOF) and Information Technology Infrastructure Library (ITIL). It provides built-in processes for incident and problem resolution, change control, and asset lifecycle management.”
      https://blogs.technet.microsoft.com/musings_of_a_technical_tam/2012/06/28/system-center-2012-self-study-guide-part-6-orchestrator-and-service-manager/


      • System Center 2012 - Service Manager, System Center 2012

      System Center 2012 – Service Manager provides an integrated platform for automating and adapting your organization’s IT service management best practices, such as those found in Microsoft Operations Framework (MOF) and Information Technology Infrastructure Library (ITIL). It provides built-in processes for incident and problem resolution, change control, and asset lifecycle management
      http://technet.microsoft.com/library/hh305220

      • MS System Center Service Manager (SCSM)


      Service Manager can help your organization to increase productivity, reduce costs, improve resolution times, and meet compliance standards. Its built-in processes are based on industry best practices such as those found in Microsoft Operations Framework (MOF) and the IT Infrastructure Library (ITIL).
      http://www.microsoft.com/en-us/server-cloud/system-center/service-manager.aspx



      • System Center 2012 - Virtual Machine Manager(SCVMM)

      Virtual Machine Manager (VMM) is a management solution for the virtualized datacenter, enabling you to configure and manage your virtualization host, networking, and storage resources in order to create and deploy virtual machines and services to private clouds that you have created.
      http://technet.microsoft.com/library/gg610610


      • Microsoft System Center 2012 Endpoint Protection

      Microsoft System Center 2012 Endpoint Protection provides an antimalware and security solution for the Microsoft platform.
      When System Center 2012 Endpoint Protection is used with Microsoft System Center 2012 Configuration Manager, it provides a comprehensive enterprise management solution that lets you do the following:
      Centrally deploy and configure the Endpoint Protection client.
      Configure default and custom antimalware policies that apply to groups of computers.
      Create and deploy Windows Firewall settings to groups of computers.
      Use Configuration Manager software updates to automatically download the latest antimalware definition files to keep client computers up-to-date.
      Control who manages the antimalware policies and Windows Firewall settings by using the Endpoint Protection Manager security role.
      Use email notifications to alert you when computers report that malware is installed.
      View summary and detailed information from the Configuration Manager console and reports
      http://technet.microsoft.com/library/hh508836


      • System Center 2012 - App Controller

      App Controller provides a common self-service experience that can help you easily configure, deploy, and manage virtual machines and services across private and public clouds.
      http://technet.microsoft.com/library/hh546834


      • System Center 2012 - Unified Installer

      System Center 2012 – Unified Installer is a tool that provides a single-user-interface experience for the installation of seven System Center 2012 components, including all prerequisites and Microsoft SQL Server 2008. Unified Installer provides a means of distributed installation from a central point using the existing component Setup.
      http://technet.microsoft.com/library/hh751290


      • System Center 2012 Self-Study Guide (Complete Edition)
      System Center 2012 Self-Study Guide (Part 1 – System Center Overview)
      System Center 2012 Self-Study Guide (Part 2 – Advisor and App Controller)
      System Center 2012 Self-Study Guide (Part 3 – System Center Configuration Manager)
      System Center 2012 Self-Study Guide (Part 4 – Data Protection Manager and Endpoint Protection)
      System Center 2012 Self-Study Guide (Part 5 – Operations Manager)
      System Center 2012 Self-Study Guide (Part 6 – Orchestrator and Service Manager)
      System Center 2012 Self-Study Guide (Part 7 – Unified Installer and Virtual Machine Manager)



      • Difference Between Policies & Procedures Vs. SOPs

      Businesses normally set rules on how the the work gets done, and will use standard operating procedures, called SOPs, as well as a set of policies and procedures to accomplish work predictably and efficiently. There are difference between the two. Policies and procedures give an overview of a company’s activities. Operating strictly “by the book” means adhering to standard operating procedures.

      Policies and procedures describe the generalized view of a job without getting into the major specifics, and often remain the same within a department or across the company as a whole. These often govern who does what on the job. 
      Standard operating procedures get down to specifics of how a task is to be accomplished
      SOPs work to fulfill policy and procedures
      In general, policies and procedures come first while standard operating procedures are drawn up after a company determines its policies and procedures.

      Standards
      SOPs look more toward standardized ways to get work done, while policies and procedures allow more room for a worker to improvise. 


      https://yourbusiness.azcentral.com/difference-between-policies-procedures-vs-sops-27607.html


      • For example:

      Dev environment: Team is working on Fix Version 2.3 in Development
      Staging environment: Team is testing Fix Version 2.2 in QA
      Releases in Production: Fix Version 2.1 in use with customers A, B, & C.  Version 2.0 is in use with customers X, Y, & Z
      If a user finds a bug in their production software, the Affects Version would be tagged w/ Version 2.0 or Version 2.1, depending on which version they have in use.

      If a tester finds a bug in Staging, the Affects Version would be tagged with 2.2.
      https://community.atlassian.com/t5/Jira-questions/What-s-the-difference-between-version-and-release/qaq-p/338467


      • Build − executable or a library created by compiling source code.

      Version − a software build. New version is a different build.
      Release − (public release) a version intended for use by general population

      https://stackoverflow.com/questions/20184055/what-if-any-is-the-difference-between-a-software-release-and-a-version