+ All Categories
Home > Documents > Software Engineering in an Information Services Economy

Software Engineering in an Information Services Economy

Date post: 12-Nov-2014
Category:
Upload: rakesh-ranjan
View: 373 times
Download: 2 times
Share this document with a friend
Description:
Software Engineering is a vehicle to deliver a product or service. Today, “Information” isconsidered the most important product or service and software is playing the crucial rolein delivering Information. No wonder, today’s economy is being labeled by many asInformation services economy. The recent survey shows that jobs in services sector havedramatically increased; in fact 80% of US jobs are in services sector which is driven byInformation. The new model of delivering and consuming software as a service is alsogaining momentum.
15
1 Software Engineering in an Information Services Economy Rakesh Ranjan ( [email protected] ) Abstract Software Engineering is a vehicle to deliver a product or service. Today, “Information” is considered the most important product or service and software is playing the crucial role in delivering Information. No wonder, today’s economy is being labeled by many as Information services economy. The recent survey shows that jobs in services sector have dramatically increased; in fact 80% of US jobs are in services sector which is driven by Information. The new model of delivering and consuming software as a service is also gaining momentum. This research paper examines the newly emerging concept of services science in the context of software engineering and aims to provide answers to the following questions: How do we improve the service creation and delivery process? What are the changes in traditional software engineering process needed to go hand-in-hand with service innovations? Can we develop new methods for services creation and delivery? Can we develop framework for services creation and delivery?
Transcript
Page 1: Software Engineering in an Information Services Economy

1

Software Engineering in an Information Services

Economy

Rakesh Ranjan ( [email protected] )

Abstract

Software Engineering is a vehicle to deliver a product or service. Today, “Information” is

considered the most important product or service and software is playing the crucial role

in delivering Information. No wonder, today’s economy is being labeled by many as

Information services economy. The recent survey shows that jobs in services sector have

dramatically increased; in fact 80% of US jobs are in services sector which is driven by

Information. The new model of delivering and consuming software as a service is also

gaining momentum.

This research paper examines the newly emerging concept of services science in the

context of software engineering and aims to provide answers to the following questions:

• How do we improve the service creation and delivery process?

• What are the changes in traditional software engineering process needed to go

hand-in-hand with service innovations?

• Can we develop new methods for services creation and delivery?

• Can we develop framework for services creation and delivery?

Page 2: Software Engineering in an Information Services Economy

2

Information Services Economy

In today’s service dominated economy, the service workforce is increasing at the greatest

pace, yet the productivity and innovation in the services business compared to the

manufacturing are very low. The recent focus on services innovation termed as “Services

science management and engineering” (SSME) aims to increase the productivity of the

service industry, create innovation, and transparency to justify and measure the value of

investments in services. Service industry depends highly on technologies. Technology

evolve and change and often driven by business innovation. In the following section, we

will take a look at the evolution of software technology and how software once

considered as a product became a major part of our service economy.

The evolution of software technology

Fig 1: The software generations

1st Gen

2nd Gen

3rd Gen

4th Gen

5th Internet

Punch Cards

Assemblers

Natural Language

COBOL

4-1/2 OO/CASE

Page 3: Software Engineering in an Information Services Economy

3

The first generation of software goes back to the punch card days, when programming a

computer required more than writing and running the code. In fact, you would have to

connect wires and adjust dial and switches to make the program work. In addition,

programmer has to have good knowledge of the computer system; otherwise program

would crash the computer frequently. The code written in 1st generation used to run very

fast because they were directly executed by the CPU. The second generation languages

like Machine language were inspired by this concept and still find use in some modern

applications. Companies like VMWARE are capitalizing on the same concept.

The second generation programming languages were created in 1950 to simplify the

programming using symbols called assemblers and machine languages. Assembler

translated the symbolic instructions to the actual processing instructions. These symbols

were called mnemonics which represented the command instructions in its short form.

Assemblers are still used at few places; they work at low level.

By early 1950, scientists and engineers started to work on developing compilers and

interpreters which would make natural language programming a reality. In 1953, IBM

developed a Formulae translation language for its mainframe computer which was later

called FORTRAN. It is still used in scientific computing field such as climate modeling,

computational physics and computational fluid dynamics etc.

Next came the 4GL language; goal was to minimize the instruction set compare to the

3GL and to use these languages to develop business applications. COBOL and IBM’s

RPG are considered as first few 4GL languages which allowed programmers to create

Page 4: Software Engineering in an Information Services Economy

4

business application with fewer instruction sets. These languages were designed to access

and manipulate databases applications that run major businesses.

New Services Growth Opportunity

Internet changed the landscape of the business and created numerous new services

opportunities. SaaS (Software as a Service) is one of the emerging trend, where

component based software are built and offered as services over the internet. This model

has fueled the outsourcing growth, where a company now can outsource some of the core

services to the other companies. Evolution of service oriented architecture has made

possible developing software as a component and distribute over networks.

Internet has enabled businesses to think out of box and explore new ways of doing

business. It has enabled the self serve model which empowered people to participate in

the cycle of commerce and benefit. Internet enabled us to create and deliver services.

However Internet has leveled the playing field so if we want to be competitive and

innovative, we must treat service as science and engineering and improve the process of

service creation and delivery.

What is a service?

Most of the services are IT enabled; software engineering is the medium to deliver these

services. According to Tien and Berg (2003) “Any economic activities whose output is

not a physical product or construction, is generally consumed at the time it is produced

and provides added values in terms of convenience, amusement, timeliness, comfort or

Page 5: Software Engineering in an Information Services Economy

5

health are considered as services”. According to the definition given above, service

production and service delivery are an integrated process.

Understanding Services using Matrix?

Service process matrix

Indiana University Prof. Roger Schmenner in 1986 proposed a service process matrix in

which he classified services as a two dimensional matrix as shown below:

He defined degree of labor intensity as a ratio of labor cost to the capital cost. As shown

above, the top left quadrant contain the service organizations with a low degree of labor

intensity and low degree of interaction and customization. This quadrant is named

service factory because low labor intensity and low customer interaction allows it to

operate like a factory. Airline service and hotel industry are good examples where

Fig: (Adapted from Lovelock (1983) and Fitzsimmons & Fitzsimmons (2003))

Page 6: Software Engineering in an Information Services Economy

6

company can hire low paid and less skilled workers. The upper right box called as service

shop contains companies with low labor intensity but high customer interaction and

customization. Typical hospitals and restaurants fall in this quadrant.

The lower left quadrant called as Mass service contains organizations with high degree of

labor intensity but low interaction and customization. Service providers like retail or

wholesale companies and schools are good examples. Finally, lower right quadrant where

high degree of labor intensity and very high customer interaction and customization is

required. These services are called professional services typically provided by doctors,

lawyers, architects and consultants.

On important thing about this service process matrix is that these services shift their

positions in the matrix over time. For example, traditional restaurants used to have very

high degree of interaction, but the new fast food chains are really taking the restaurant

services to the service factory area. Outsourcing of professional services is having impact

on the labor intensity of such services hence pushing it towards Mass services. The

summary is that change in business process and global economy will change the way

these services operate, but this kind of matrix provide a nice way for managers to make

strategic decisions about services.

Service type matrix

Classifying the services by the nature also seems to provide very useful marketing

insight. Christopher Lovelock in his paper (1983) in the journal of marketing proposed a

two dimensional matrix based on the nature of act and the recipient of the service.

He classified the nature of act into tangible and intangible services where as recipient of

service can be either people or things. Tangible services can be directed at both people

Page 7: Software Engineering in an Information Services Economy

7

and things, for example healthcare and restaurant services are directed at people where as

laundry services are directed at things such as clothing.

The goals of making this classification is to understand which service can be made self

service and innovate that are targeted at things and not people. If we take a look at retail

banking and consumer shopping, these insights have empowered businesses to make

these services self serve using web technologies.

In case of IT enabled services, this matrix can be useful in determining, what can be

outsourced and what can be delivered with personal touch.

How do we measure services?

Measurement is the fundamental to any engineering discipline. According to Lord

Kelvin: “When you measure what you are speaking about and express it in numbers, you

know something about it; but when you can not measure, when you can not express it in

numbers, your knowledge is of a meager and unsatisfactory kind: it may be the beginning

of knowledge, but you have scarcely in your thoughts, advanced to the stage of science.”

We have taken quantitative approach to software engineering to measure its processes.

We have used various metrics to measure estimation, quality control, productivity and

other project management tasks. Can they be applied to measure services? The answer is

not that easy. Measuring services is a challenge. There are factors like productivity and

quality that apply to services measurement but they are not the major focus areas

according to the researchers in services science field.

Page 8: Software Engineering in an Information Services Economy

8

The most important factor is service innovation and measurement of service innovation

requires a holistic approach. The benefits of measuring services are multifold and very

similar to those of measuring software engineering:

• It helps forecast and predict the profitable investments in services

• It helps define MOV (Measurable Organizational Value) and MPV (Measurable

Personal Value)

• It encourages innovation to find better ways to perform and deliver services

• It empowers stakeholders to make educated decisions (i.e. where to invest new

resources, where to reassign existing resources etc.)

• It shows the direct result of the investments in the company’s bottom line

• It increases understanding and knowledge of services discipline

Applying Methods to services

Researchers are still trying to define methods that could be applied to the services

creation and delivery. The problem is that technology is changing rapidly and so is the

business model. Both are moving targets hence the challenges. In general, Methods that

could apply to services creation and delivery are very similar to the software methods and

also fall in these categories:

• A repeatable process or procedure

• Captured experiences from past projects

• A checklist or a template

• Standard proven practices

Page 9: Software Engineering in an Information Services Economy

9

These methods are applicable to any service engagement life cycle. We take an IT service

engagement as an example and depict the phases in the figure below:

Figure: Service engagement life cycle

How do methods help?

Methods provide a way to deliver a set of capabilities (service engagements) quickly and

efficiently. Methods should be flexible to adapt changes at any level as required due to

change in the business models.

Methods provide tremendous benefits including:

� Setting common frame of reference for communications within the team and

enablement of standard practices across service delivery teams.

� Estimation methods are used to justify costs of a service engagement project.

� Methods provide a way to lay out the project structure and plan and hire resources

with right skills. We will discuss the applicability of social network application in

an organization to setup a highly optimized project team for services delivery.

� Methods provide us a framework for delivery of services to customers.

Start-up or agreement phase

Business discovery phase

Proposal phase

Service Planning

Service Implementation

Service delivery

Page 10: Software Engineering in an Information Services Economy

10

How do we develop methods?

Divide and conquer – that’s true. We need to decompose the service engagement work

into tasks. We keep decomposing it using the work breakdown structure until we find the

independent task. Once we get there then we can develop the technique to really

accomplish that task. In couple of iterations, we can apply the lesson learnt and discover

the optimized way of doing it. Here, we illustrate this concept using an example of

service engagement for a specialized IT conference.

Figure: Work Breakdown structure for a service

We can further divide some of these tasks and then use standard process and tools to

accomplish these tasks. These standard processes evolve over time and can be further

optimized using CMM (capability Maturity Model) techniques.

SOA Conference

Speakers Participants Logistics Planning

Invite

Coordinate Topics

Furniture Backup

Reward

Registration

Badges

Lunch

Special needs

Course Materials

Room/Site

Equipments

Transport

Planning

Budget

Coordination

Survey

Page 11: Software Engineering in an Information Services Economy

11

Once we have a WBS for the project, these can be applied as guidance:

� Checklist: provides a list of items that need to be completed or verified, basic but

very useful in software reviews and validation.

� Concepts: outlines key ideas or underlying principles that serve as foundation for

more explicit guidance

� Estimation: provides guidance on the size of work to complete a project and also

highlights the complexity.

� Standard practice: a proven way of doing things. Software standards like W3C

or JSR are good examples.

� Reusable Asset: intellectual property that can be utilized to perform some task or

leveraged as a starting point for the creation of a solution

� Template: a form or empty instance of a work product that can be used as

starting point for the creation of a new one

� Expert help: specialized mentoring on how to apply a specific tool to accomplish

a project or task.

� Documentation: published resources that can help guide creating new products

or solutions.

Delivering Service - Building a service engagement team

The biggest cost to the service creation and delivery is the cost of labor. How could we

build an efficient and optimized team for creation and delivery of service system? In this

section, we highlight the need to use social network analysis tool on the formal org

structure to build a team. Here we show the social network connections on top of the

Page 12: Software Engineering in an Information Services Economy

12

formal organizational chart. We later discuss how uncovering these connections help

build an efficient and optimized team to deliver any capability.

John SmithCEO

Joe WangVP Sales

Jerry WVP Dev

MohanSr. Mgr.

Atul PatelVP Strategy

John KVP HR

David KDirector

Jack P

Sally M

Manoj K

Tom J

Larry B

Sundar P

King LMgr. Web Dev

Lin WangDir Dev

Susan PProj Mgr.

Sal VMgr. Legacy John K

Mgr.

John KSr. Mgr.

John KDir.

John P

John P

Lindsey

RashiAngela

tom

Ram

Tom J

Vishal

Anjali

Russel

Tom J

Aakash

Paul

Tom

Fig: Social network connections over a formal org chart

Let’s consider a typical team building scenario. ABC global services has been awarded a

software service contract and it has to build a team quickly to start the project. Using

traditional method, ABC will contact its HR counterpart to find the available resources or

shift the resources from another project. ABC practionars will try to match and find or

hire skills needed to successfully execute the project. However building a team based on

the formal org chart does not fulfill the promises of the project. Social networking tools

empower the company to look at the hidden organization (also called as under water org)

and uncover the social network connections within the employees. For example, how do

Page 13: Software Engineering in an Information Services Economy

13

employees in various functional groups interact with each other? Does Tom in Strategy

group have any connection in development or research group? Where does Tom get most

of his answers from? Who does Tom go with lunch most often, or play golf on weekends

with. These answers tend to provide insight about the informal relationship between

employees across organization.

With the help of the social network analysis tool, Rod the ABC account manager quickly

searches on required skills in the entire organization. The tool highlights the resources

with different colors (based on the skills set they possess) and any hidden connections

between them. The tool also provides relevant information such as current area of

expertise, availability date and other preferences. Rod then quickly assembles the list of

resources that would be best fit to deliver this specific project and try to bring them on

board. The team that was built based not only on formal org structure but the hidden

social connections between them works well.

Services Modeling Framework

Software engineering depends heavily on models to come up on optimized methods and

practices. Since services depend heavily on human capitals, it is even more important to

represent different types of stochastic data to model services appropriately. Some of the

examples of such data are:

• Matching of supply to demand for changing skills in a project over the timeline of

a project

• Closeness index between skills to calculate what will it cost to train people from

one skills to another

• Statistical data for hiring, training and attrition for a successful and failed project

Page 14: Software Engineering in an Information Services Economy

14

• Profiling a successful project data into a template for future engagements

In order to utilize the data discussed above there is a need to design a service data

framework which will allow us to query and find very interesting answers such as:

1. Which part of the organization provides exact set of skills for the given

project?

2. What are the major skills set within a group? What is the transition path

from one skill to another?

3. What skills set will be required over the project timeline considering

change in technology?

4. What will be the probable attrition rate in a particular project?

When this framework is combined with the social network analysis tool discussed in the

previous section, will answer many important questions regarding services innovation.

Conclusion

Services creation and delivery have been a matter of experience and intuition, so there are

not any scientific methods available to apply. However, need for service innovation is

increasing with demand for productivity improvement and proper distribution of the

value creation among service creators and service consumers. There is no alternative to

the experience, but it’s hard to find right people at right time at right place. Hence it’s

very important that the available resources are backed by right methods and tools. We

can extend existing software methods and tools to design and develop methods and

Page 15: Software Engineering in an Information Services Economy

15

framework for services. We need to apply quantitative methods to measure services and

its attributes. The combined services data framework and social network analysis tools

can help us create efficient team that can utilize methods and tools to deliver high quality

on-demand services in an Information services economy.

References:

1. Classifying Services to Gain Strategic Marketing Insights Paper by

Christopher H. Lovelock

2. Services Sciences, Management and Engineering

http://www.research.ibm.com/ssme/

3. Autonomic Computing by Richard Murch

4. What is service science, a research paper by Tadahiko Abe.


Recommended