Upload
capella
View
0
Download
0
Embed Size (px)
Citation preview
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 1
A Look at the various Process, Practices and Procedures that are involved in IT Systems Life
Cycle Management (IT SLCM) in a Dynamic Environment
Maurice Kabeireho, 2014
BMGT 8216
Innovating IT Life Cycle Management
Capella University
10 Reler Ln. # M
Somerset, NJ 08873
Tel: (848) 228 3970
Email: [email protected]
Instructor: Dr. Susan Li
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 2
Table of Contents
INNOVATING INFORMATION TECHNOLOGY LIFE CYCLE MANAGEMENT
Abstract ------------------------------------------------------------------------------------------5
SDLC Development Methodologies and System Project Planning ------------------6
Part 1: SDLC and Development Methodologies ---------------------------------------- 6
Waterfall Methodology -------------------------------------------------------------------------6
Rapid Application Development ------------------------------------------------------------- 7
Identifying Critical differences for criteria selection ---------------------------------------9
Part 2: System Project Planning -----------------------------------------------------------10
Introduction ------------------------------------------------------------------------------------- 10
Analyzing the relationship between organizational strategic planning
and system acquisition planning, including the key players and roles ------------------ 11
Assessing who should be involved in system planning and when
they should be involved; support this with a rationale ------------------------------------ 11
Analyzing the characteristics needed of team members for system
development and balancing it with the available workforce resources ------------------13
Evaluating the criteria for choosing in-house implementation, hiring
specialized consulting teams, or complete outsourcing teams --------------------------- 14
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 3
A Review of the Different Types of Requirements of Modelling as Used
in System Development -------------------------------------------------------------------------17
Logical models and their comparison ---------------------------------------------------------- 17
Comparing two data models for use on a software development project,
including the strengths and weaknesses of each ---------------------------------------------- 19
Determining the criteria for choosing the appropriate process/logic and data
models for systems development and who should determine those criteria --------------- 22
Analyzing System Software Implementation and Maintenance and the
Various Tools Involved in the Process ------------------------------------------------------- 23
Analyzing the ways in which software architecture and
software design differ ---------------------------------------------------------------------------- 23
Selecting and analyzing a CASE tool that could be used to create
a software architecture ---------------------------------------------------------------------------- 24
Selecting and analyzing a CASE tool that could be used to
create a software design -------------------------------------------------------------------------- 26
Analyzing the benefits of an integrated CASE tool to an organization -------------------- 28
Analyzing System Software Implementation and Maintenance Up
to the End Life Cycle --------------------------------------------------------------------------- 30
Analyzing the governance for the implementation of a software
application----------------------------------------------------------------------------------------- 31
Analyzing the challenges in a geographically distributed
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 4
development team ------------------------------------------------------------------------------ 32
Assessing the role of process improvement for software implementation--------------- 33
Evaluating the benefits of CMMI as a process improvement
methodology, and briefly comparing it with COBIT --------------------------------------- 35
Analyzing system life software maintenance, including end-of-life
planning and data migration to replacement system ---------------------------------------- 38
Analyzing the process of IT Service Management in software
Implementation and Maintenance ---------------------------------------------------------- 42
Analyzing the role, or potential role, of IT service management (ITSM)
in risk management for delivering IT services to internal and external clients ---------- 42
Evaluating how the use of IT service management (ITSM) might
address the implementation of best practices ------------------------------------------------- 44
Analyze the benefits versus the challenges (for example, training and
process overhead) of ITIL ----------------------------------------------------------------------- 45
Contrasting the benefits of adopting best practices versus the need
for innovation in enterprise processes --------------------------------------------------------- 46
Assessing the approaches for balancing best practices and innovation ------------------- 48
Conclusion ---------------------------------------------------------------------------------------- 50
References ----------------------------------------------------------------------------------------- 51
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 5
Abstract
Software System development life cycle management involves all process, procedures and
policies as well as any activities in developing information systems through a multistep of
processes that include requirements investigation, planning, modelling, going all the way to the
systems development, testing, implementation, maintenance, and up to the end of a system’s life
and eventual migration to a new system. Along the way, the process involves using a number of
tools, and procedures as well as a set of skilled personnel such as architects, analysts,
programmers, testers and users who work together to create the millions of lines of custom-
written codes that drive today’s complex systems. Also the process involves a constant
monitoring and process improvements so as to enable the producing organization keep within the
required regulations and producing in line with the customer’s expectations. It is thus a rigorous
process that involves uses of the industry best practices and requires specialized skills to achieve
its goals. This paper thus sets out to explain the various management stages and processes that
the system undergoes throughout its life cycle, including the servicing and process improvement
processes as well as migration to the new system.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 6
SDLC Development Methodologies and System Project Planning
Part 1: SDLC and Development Methodologies:
The two identified software development methodologies which are used in the process Systems
Development Life Cycle are:
a) The waterfall Development Methodology
b) The Rapid Applications Development (RAP) methodology
The waterfall methodology:
The waterfall, systems development methodology is a traditional method by which a well line of
document is kept and followed, stage by stage, throughout the entire SDLC (Minton, 2011). The
developers take a lot of time in requirements gatherings to ensure that all the questions in regard
to the product are asked and the detailed answers included in the documentation. In this
methodology, the system is built according to the plan that is well stipulated in the
documentation; and that one should move to another phase only when it’s preceding phase is
reviewed and verified. More so, documentation of all activities is well written and kept
throughout the entire development process for referral purposes. This methodology works well
especially for software development that is structured, is not needed urgently and does not
include a lot of complex materials such as graphics and navigations.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 7
This model is a sequential design process, often used in software development processes in
which progress is seen as flowing steadily downwards through the phases of Conception,
Initiation, analysis, design, Construction, testing, implementation and maintenance.
The advantage of waterfall development is that it allows for departmentalization and managerial
control. A schedule can be set with deadlines for each stage of development and a product can
proceed through the development process. However, this method has a set- back in that there is
no turning back. Once a stage has been finished, there is no chance of turning back and this
limits the need for review.
Also this methodology is mainly suited for software developments in which later
communication with the stakeholders may be difficult and therefore the developers will rely
more on the documentation to build the system. It will also best be suited for building solutions
that have features that are not dependent on each other, such that in case changes have to be
done, they will not be very costly as having to reconstruct the entire system.
The Rapid Applications Development Methodology:
This form of systems development methodology mainly applies to the situation where
systems/applications need to be delivered in a short period of time. It usually employees the
prototyping method in which the developers are able to produce visual displays at various stages
of the SDLC of what the final product will look like and have it presented to the stakeholders to
determine whether their requirements have been met at that particular phase of development. If
the stakeholders agree with it, then the developers discard that information and quickly go the
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 8
next phase. They, in other words treat each stage separately after satisfaction confirmation from
the users that the phase requirements have been met. This methodology is well suited in the
developing of websites and other web related applications that involve complexities like
navigation and need to be quickly delivered to the users (French, 2011).
This is a methodology which relies on the concept that products can be developed faster
and of higher quality through:
Gathering requirements using workshops or focus groups
Prototyping and early, reiterative user testing of designs
The re-use of software components
A rigidly paced schedule that defers design improvements to the next product
version
Less formality in reviews and other team communication
This methodology also usually embraces object-oriented programming methodology, which
inherently fosters software re-use. Good examples can be Java, C++ and other programming
languages.
Identifying critical differences among the methodologies that contribute criteria for the
selection of the best fit software development methodology for your organization's needs:
The critical differences among the methodologies that contribute criteria for their selection as the
best fit by my organization can be looked at from the following angles;
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 9
a) While the waterfall takes a sequential process that takes a long time to complete, the RAP
is on the other hand a faster methodology that quickly delivers the system. Due to the
rapid changing technology, my organization prefers to use the development methodology
that is faster and delivers the system in the possible shortest time and thus the RAP
methodology is preferred for that matter.
b) Whereas the waterfall takes into consideration user’s requirement, it is not constantly
updated throughout the development process like in the RAP, and its prototyping
processes. Therefore, the RAP methodology is a better way to achieving a guaranteed
customer satisfaction in the end than the waterfall methodology. Since one of my
organization’s goals is customer satisfaction, we need a system that well reflects the
requirements of the user’s and thus will guarantee customer satisfaction and this makes
the RAP is more favorable approach.
c) Moreover, most of the applications software that we utilize are web based and structured
in nature and involve graphical navigations from one point to another, which further
makes the deployment of the RAD methodology more favorable.
d) More so, the activities of my organization very much involve the use the programing
language that is used especially in the setting up of edit check parameters that will ensure
that all the discrepancies are captured and data is completely cleaned. From the analysis
of their characteristics, the RAD methodology is good at this, especially the use the Java
C++ language.
Therefore, considering all the above factors and critically looking at them, they point to the use
of the Rapid Application’s Development (RAP) methodology since it will satisfy the same
conditions that my organization needs in a development methodology.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 10
Part 2: System Project Planning
Introduction:
A Systems Development Life Cycle (SDLC) is a representation of the various stages through
which IT system developers work in order to deliver a system to its completion. Traditionally, it
involved five stages that include Initiation and Planning, Analysis, Design, Implementation and
testing. However, as time evolves and more research is been carried out, more stages have come
to be encompassed with the system development process to include stages like Deployment,
Acceptance that also involves the process of installation; and also other post deployment
processes such as maintenance that tend to last forever as long as the system is in use.
Because software development has become more complex than ever before, there has
necessitated a need for people from different fields such as architects, analysts, programmers,
testers as well as users to work together during the development process in order to deliver
systems that will do the right job while ensuring quality and satisfaction of the products (Kay
2002). For this to happen, it all starts with the planning phase of the Systems Development Life
Cycle (SDLC) that will ensure all that is required for a successful project is available. The
planning stage involves a look at the entire systems project in regards to it goals and objectives
and the resources that would be needed to achieve them as well as the means through which to
attain such resources. Therefore, this particular stage is very important as it forms the basis/back
born of the entire project such that mistakes made here can hurt the entire project in the process
whereas proper planning will very much form the basis of the project success.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 11
Analyzing the relationship between organizational strategic planning and system
acquisition planning, including the key players and roles:
The strategic planning of an organization involves planning towards achieving the organization’s
goals and objectives and these may include such things as cost reduction, error reduction, risk
reduction, increased market share, customer satisfaction, increased production efficiency to
mention but a few. Therefore, in planning to acquire a system, management and or the planning
committee must ensure that such a system will help in achieving the goals and objectives as set
out in the organization’s strategic plan for the new system to bring about success in the
organization. Thus, aligning the organization’s goals and IS goals is very critical for the
successful development/acquisition of any systems. For the example in the case of my
organization, this will involve the transforming the contents of the strategic plan such as cost
reduction, increased market share, increased customer satisfaction as well increased efficiency
into systems development by adding them to the project’s develop initiative.
This means that for a system that will not be able to deliver on the above goals and objectives
will not be considered in the acquisition process. This in turn implies that strategic planning form
a back born of project initiation and must be part and parcel of the entire process.
Assessing who should be involved in system planning and when they should be involved;
support this with a rationale:
It should be noted here that system project planning forms basis of the entire project such that
mistakes made here can hurt the entire project in the process whereas proper planning will very
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 12
much help in making the project a success. System planning involves a look at the entire systems
project in regards to it goals and objectives and the resources that would be needed to achieve
them as well as the means through which to attain such resource. Therefore, this calls that all
stakeholders in the project such as the users, owners, developers, sponsors, project manager to
mention but a few be involved in this process so as to leave no stone unturned.
The user’s contributions will be very important to avoid final project poor customer satisfaction
or at worst project rejection which will be very costly for the organization to go through the
entire rework process. Software systems that do not satisfy the users are often accorded to poor
and incomplete design because they do not optimally serve the purpose for which they were
developed (Majid, Noor, Adnan and Mansor, 2010). Utterly, the users are the final owners of the
project and their requirements will detect the scope of the project. Therefore, they must be
available at all times in the life of the project.
The developers contribution will also be needed in this stage since it is where we define the
discrete work and activities required to have each activity properly completed (Hoffer, 2014).
The developers should be available right from start of the planning to ensure that activities are
well defined and present throughout to ensure that they liaise with the users especially to address
any upcoming issues that may require making changes.
The role of the sponsor is equally important so as to determine whether the resources that are
required will be available to cover the operations of the project. The sponsor is the chief
financier of the entire project and without him, the planning process cannot be finalized as he
must agree to whether the figures are within attainable means or not. He may not be available all
the time like the project manager and the developer but at least during the final financial analysis
of the planning process.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 13
The project manager who is the person at the center of the entire project as a matter of fact has to
be involved and in all stages of the planning process as he will be responsible for the
coordination and execution of the entire plan. Therefore he has to make sure that the plan will be
in position to work within the project’s triple constraints of time, scope and schedule and thus
enabling it to succeed without hindrances.
Also other members of the project team should be present all the time to carry out such activities
like feasibility studies and risk assessment to ensure that the project will be viable with the given
resources as prescribed on the project plan. All these people must come together and be readily
available during the planning process as they contribute crucial aspects towards the success of
the project.
Analyzing the characteristics needed of team members for system development or
acquisition and balancing it with the available workforce resources:
The overall goal of systems acquisition is to design, develop, and deliver a system that works, is
on time and within budget, and can be maintained and reused. Therefore this would require a
team of members that are well skilled, vibrant, ready to adopt to any upcoming changes, and
equipped with the knowledge that is necessary to achieve the goals. In regards to the available
workforce resources, there is a small percentage of those who are well specialized in the field
compared to the demand for them. This creates a competitive environment for such laborers and
may be expensive to hire permanently. However, for an organization to ensure that it has the
workforce that the best skills to achieve its goals, it is crucial that two thing be done;
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 14
a) Conducting a rigorous recruitment that involves testing the skills of the employees on the
activities of the system to ensure that they have the skills needed for the job.
b) Also in order to keep an updated workforce, training of the existing employees should be
encouraged so as to equip the team members with new skills that would be necessary to
encounter new challenges due to the changes in technology.
This what my organization does to ensure the IT workforce is well equipped and ready carry
forward the activities of the organization in the required manner that leads to success.
Evaluating the criteria for choosing in-house implementation, hiring specialized consulting
teams, and/or selecting complete outsourcing teams:
Software-intensive systems are critical to the administration and operation of every business
organization. The needs that eventually lead to a new acquisition of personnel arise from an
organization’s day-to-day mission and business operations. Investment and work process
analysis articulate these needs and may recommend process changes, procurement of a new
system, or both. Some of the factors that determine how an organization may acquire a system
and which of form of personnel include such things as the costs, risks, size of the firm,
expertize/skills, location to mention but a few.
The cost of the project is an important factor in determining how the firm may acquire an IT
project. Despite the advantages of in-house project acquisition such as customized, unique
project, that is fully owned, an organization may resort to using an outside source if it is
determined that the cost of in-house is too high and will affect productivity and profitability of
the organization. Therefore, the firm opts to spend nothing on capital investment but only hires
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 15
the outside personnel and thus getting the same services necessary for its production activities
but at lower costs of production. For example in the case of my organization, other than build the
entire software that serves as INFORM software and use it only in our organization, the company
opted to outsource it from Oracle, and thus avoiding on the initial costs that would be involved in
building it. This factor also works well for small firms who cannot afford the cost of building
their own systems by providing them with the IT support they need to remain competitive in the
market. They thus resort to using outsourcing the service and thus using the personnel outside the
organization.
The urgency of the project may also act as a criteria for determining how a system may be
acquired. If a firm needs the IT services to be used urgently in a short period of time, then it may
only be logical to hire/outsource it as it may not have enough time and manpower skills to build
it from the in-house source. This is also mainly so because of the ever changing technology that
requires organizations to adopt to such changes in a short period of time. Therefore, in this case
employing an outside specialized personnel may only be logical and the only possible way.
Risk is another factor that acts as a criteria for how to acquire a systems software and the way
firms decided on how to implement its IT Systems. Furthermore, if a firm carries out a risk
assessment and finds out that the risk of developing the software from in-house is high, then they
may opt to use outside sources in a bid to avoid such a risk associated with developing and
owning the system and leave it to the vendor organization. This would be a reason for complete
outsourcing.
Also important to note is the fact that even though the firm may have all the financial, time and
incurring less risk in building the system from in-house, it may however be lacking the expertise
to do so. Some of the complex software systems require specialized training that may not be
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 16
available with the firm IT team. In this case therefore, the firm may hire specialized manpower to
come and help in the building of the system from in-house. Also the firm already have the
system but still lack the special skills necessary for its optimal operation and so it may in case
also hire a specialized team to provide such services.
Furthermore, a firm’s global location may also act as a criteria for determining how a system
may be acquired. Firm’s that operate from the remote areas of the world may find it difficult to
attract the necessary resources to build an in-house system and may thus resort to complete
outsourcing form the specialized firms who will provide IT support from a different global
location.
By and large, determining on whether to invest in house or acquire an IT system and how to
acquire it would mainly be based on the results of the cost-benefit analysis and feasibility studies
of the project carried out during the project planning phase that will show the project’s position
in relation to its critical investment factors such as cost, risk, as well as the timing of the project
to mention but a few.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 17
A Review of the Different Types of Requirements Modelling as Used in System Development
Logical models and their comparison:
A logic model may be defined as a tool that is used by the project evaluators and managers to
assess the effectiveness of the software program to be undertaken. According to the publication
by the W. K. Kellogg Foundation (Jan 2004), they define a logic model as a systematic and
visual way to present and share your understanding of the relationships among the resources you
have to operate your program, the activities you plan to engage in, and the changes or results you
hope to achieve as well as the overall impact they will bear at the end of the day.
Logic models or sometimes known as program logics can either be in a tabular or visual format,
often structured into several layers drawn from a list of inputs, activities, outputs, outcomes and
impacts; sometimes with the tabular formats including such headings such as risks and
assumptions. A simple flow of logic model processes can be shown as below;
Resources
/ inputs Activities Outputs Outcomes Impact
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 18
The above diagram shows the if then scenario between the elements of the program such that, if
the resources are available, then what program activities do we need to use them for, and if we
engage in such activities, then what would be the outputs; and what outcomes shall we get from
such an output and consequently, then what would be the overall impact of our program.
According to the W. K. Kellogg Foundation (Jan 2004) publication, logic models can be
categorized depending on which approach they take such as theoretical, outcomes or activities
approaches. For this assignment, I will look at the Outcomes approach type of logic model
versus the Activities approach type of logic models.
Whereas the outcomes logic model will focus its attention on the program’s specifics and
displays the interrelationships between specific program activities and their outcomes, the
activities logic model mostly focus on the specifics of the implementation process.
The outcomes logic model models most deals with describing the program outcomes and its
impact over a stretched period of time ranging from short and long term periods. Note however
that these outcomes come about as a result of the program activities. On the other hand, the
activities logic model mainly deals with focusing on what activities that need to be done in
program and are therefore helpful during the planning process as a source of information.
One of the greatest strength of the activities model is its ability to track outcomes and as such
acting as a tool for planning and management of program components. On the hand, the
outcome’s approach strength lies in its ability to emphasize and anticipate on the program’s
intended results in a more detailed manner. Therefore, while the activities logic model mainly
puts its emphasis on the program’s planned work and thus includes the measurements and data
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 19
sources that will be used to determine the project's effectiveness in reaching targeted outcomes,
the outcomes approach model puts most of its emphasis on the program’s intended results and
thus looks at the factors that may influence the outcomes predicted (Kellogg Foundation, 2004).
In practice of software development, all logic models approaches work together to bring program
concepts and dreams to life by letting stakeholders try an idea of different sizes and apply the
theories to a model or picture of how the program would function. They help connect activities
and resources to the program outcomes.
Comparing two data models for use on a software development project, including the
strengths and weaknesses of each:
Data modelling is a process used to define and analyze data requirements needed to support the
business processes within the scope of corresponding information systems in organizations. In
systems development process, data modelling helps to identify and organize the required data
logically and physically. For example, it might specify that a given customer is represented by a
customer name and credit card number and a product is represented by a product code and price,
and that there is a one to many relations between a customer and a product. But important to note
is that data modelling is aimed at using the gathered data to meet the requirements given by the
end user.
Data modelling takes three levels namely; conceptual that looks at entity names and entity
relationships, logical level that looks at the attributes, primary and foreign key in addition to the
conceptual values, and last but not least the physical level that deals with the primary keys,
foreign keys, column tables as well as the column data types. Data modelling also can be of other
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 20
forms such as enterprise data model, integration data model, applications data model and
business information data model to mention but a few.
For the purposes of this assignment, I will compare the physical data model versus logical data
model.
Physical data models are a representation of the actual structure of the database, showing all the
tables, columns and the entire messages as they run through the computer system (West, 2011).
It includes all the table structures of the database such as primary keys, foreign keys, table
names, column names as well as column data types to mention but a few. Typical to note on this
type of data model is that it also includes referential integrity rules that are used to implement
relationship types, the data is de-normalized so as to improve on the performance of specific
queries, and most important, it includes restrictions on the data that can be held.
On the other hand, the logical data model is representation of a fully attributed data for all the
entity types that are required in the data base or as may be required by the application server.
Crucial to note is that it may or may not include rules and derived data that are relevant to the
processes of the application it serves as well as restrictions on the data that can held in at a given
time. In addition and important about the logic data model is that the data is normalized at this
stage of system development. A logic data model, if were developed can always be part of the
larger enterprise architecture and can always be referred to as a source of information in case
business changes need to be made.
Last but not least, whereas the logic data models are most often used in the evaluation stage of a
program, physical data model is most applicable during the implementation of the database while
linking the data to the technology involved in the project.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 21
In a diagrammatic form, the features of the two data models may be represented as follows;
Feature Logical Physical
Entry Names Yes
Entry Relationships Yes
Attributes Yes
Primary Keys Yes Yes
Foreign Keys Yes Yes
Table Names Yes
Column Names Yes
Column Data Types Yes
Therefore, from the above representation, it can be seen that the logical data model helps the
development team to understand the details of the data available to them while the physical data
model goes a step ahead to show the developer how to exactly implement the data in a given
database.
We also note that in the physical data model as compared to the logical data model, the entity
names become table names, the attributes become column Names and the data type for each
column is specified.
Furthermore, it is important to note that whereas the logical data model is basically non
technological or is not linked to it, the physical data model is linked to technology through the
database system. The entities in the logical data model only represent a set of things such as
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 22
people and business concepts whereas the tables in the physical data model represent data
structures with data values.
Determining the criteria for choosing the appropriate process/logic and data models for
systems development and who should determine those criteria:
Generally, the criteria for determining the appropriate process, logic or data model depends on
the type of business processes that the organization is involved in, the purpose for which the data
is being modelled and what stage of the system development.
For example, if the development is about an Enterprise data model, then it would appropriate for
one to use the logic model since an enterprise data model simply represents all the data elements
of the organization, the role that the logic data model performs so well. Also if we at the stage of
requirements gathering, it would be appropriated to use the logical data mode than the physical
data model since the interest is to define and understand the data together with the stakeholders
as much as possible. If we are at the stage of database development, then it is appropriate to use
the physical data model since we are into setting tables and data structures in the database
system.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 23
Analyzing System Software Implementation and Maintenance and the Various Tools Involved
in the Process
Analyzing ways in which software architecture and software design differ, based on the
development methodology used or considered in my organization:
A software architecture may be defined as the description of the subsystems and components of a
software system and the relationships between them, with the highest level of abstraction of a
system. It therefore includes such things as the choice of frameworks, languages, scope, goals,
and high-level methodologies that will be used in the system, while also looking at things like
functionality, comprehensibility, usability, performance, resilience, reuse, economic and
technology constraints, tradeoffs as well as aesthetic concerns. From the look of this description,
software architecture encompasses the entire structure of the system and mainly deals with the
question of what to build, what interactions between the components exist, what recovery
systems are place to mention but a few.
Software design on the other hand looks at the smaller picture of dealing with the modules but in
as precise and concrete terms in the specifications as it will be necessary for the development.
Therefore, one can say that software design is concerned with the modularization and detailed
interfaces of the design elements, their algorithms and procedures, and the data types needed to
support the architecture and to satisfy the requirements of the entire system. Software design thus
mainly deals with questions of how the software will be built including looking at how the code
with be organization and implemented so as achieve the goals and objectives of the entire
system. For instance in the (Dawson, Burrell, Rahim, and Brewster, (2010) article, in a bid to
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 24
secure the software code for the system of the Department of Defense, the Information
Assurance controls and requirements are allowed to drive the design process during the
requirements and design stage because it is through the design process that they can be integrated
in the system.
Furthermore and more interesting however is that although software architecture looks at the
detailed and descriptive picture of the entire system including defining of the protocols of
interaction with the outside world , it is nevertheless always part of the design process because
every architectural work is design while not every design work is architectural.
Selecting and analyzing a CASE tool that could be used to create a software architecture.
Include in your analysis the pros and cons of the tool's performance:
A Computer Aided Software Engineering (CASE) tool is a computer based software that helps
the software engineers during the process of developing, analyzing, designing, implementation
and maintenance of software applications, with the main function of decreasing the development
time and increasing the quality of software as well as developing easy maintainable software.
The nVision Tool:
The nVision tool is an analytical toolset for real-time architecture design. nVision was funded by
the U.S. Navy's Small Business Innovation Research program and was developed in partnership
with the Lockheed Martin Advanced Technology Labs. An application study of the technology
for distributed system design was conducted within classified facilities. The vendor now offers a
solution consisting of the nVision toolset and a suite of comprehensive services, including:
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 25
technology immersion, architecture audit, application eng. nVision mitigates and shifts these late
stage project risks to earlier in the cycle, for effective risk management. The tool uses a well-
established mathematical analysis, simulation techniques and its own practical expertise, to come
up with an approach to modeling, analysis and simulation of architectures, and applies it to a
sample of projects and process environment.
The tool combines the functionality of SQL via PS Query with the formatting capabilities of
simple applications such as the Excel application. It is therefore simple and manageable as it
makes the use of Trees and Scopes, which helps to drastically reduce the maintenance cost.
By combining a number of services such as architect audit as well as application engineering, the
tool leads to increased project control and improved planning and communication across the
entire development process.
More so, the tool provides a real time architecture design and therefore gives the developers an
opportunity to come up with the best systems designs on the current market that will lead to
better efficiency and increased profitability.
Moreover, the tool is easy and simple to use and does not necessarily need the knowledge of
SQL but only the good knowledge of the excel application. Therefore, even the users who are not
software engineers can operate some of the functionalities.
The biggest limitation with this type of tool is the number of rows and columns provided by
Excel, which in most cases can be circumvented by using the proper filters.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 26
Selecting and analyzing a CASE tool that could be used to create a software design. Include
in your analysis the pros and cons of the tool's performance:
Kestrel Interactive Development System (KIDS)
KIDS is a REFINE prototype application for algorithm design as well as program analysis and
optimization. It provides an intuitive, high-level operations for transformational development of
programs from specifications into designs that are meant to give the system an operational
direction. The system starts with a high-level logical specification, then uses the mouse to select
a high-level, transformational operation from a menu and finally marks the region of the
specification to which the operation is to be applied.
KIDS was developed by Kestrel Institute with support from RADC, AFOSR, ONR, NSF, and
ARPA and it provides operations such as the following for deriving a program from a given
specification:
simplify an expression with respect to a set of invariants
designing tree search algorithms
incremental maintenance of expensive expressions
divide-and-conquer algorithms
grammar-based parser/un parsers that translate between text and abstract syntax
KIDS has been used to develop many applications in such diverse areas as scheduling,
combinatorial design, sorting and searching, computational geometry, pattern matching, and
mathematical programming. Also, KIDS was applied to build transportation schedulers for use in
military settings; and because they incorporate scheduling constraints directly into code, these
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 27
schedulers run orders of magnitude faster than manually written codes of comparable
functionality. Examples include the ITAS in-theater airlift scheduler for the Pacific Air Force at
Hickham AF;B that was jointly developed with BBN, the CAMPS mission planning system for
the Air Mobility Command at Scott AFB to mention but a few.
The most unique aspect of KIDS is its approach to algorithm design. With KIDS, the abstract
algorithmic concepts, such as divide and-conquer, and global search are expressed formally as
parameterized first order theories.
Also KIDS is liked for its unique way of solving issues. In order to apply an algorithmic concept
A to a particular problem P, KIDS has a specialized tactic for constructing a theory morphism
from the theory of A to the theory of P.
One other advantage of KIDS is that it is fast and accurate, especially in deriving transportation
schedules form the specifications and this has provide a whole transformational approach to the
scheduling process. The system is automated in its processes and is thus much faster and more
efficient.
On the other hand, one of the limitations of the software tool is it reliance on general purpose
deductive inference and this limits its role in finding solutions.
More so, the KIDS tool has a limitation in as far as the completeness of the library of inference
rules is concerned and this limits the user’s ability in getting the job done efficiently and
effectively.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 28
Analyzing the benefits of an integrated CASE tool to an organization. Consider your
organization of choice in making the selection:
One of the greatest benefits of integrated CASE tools if the Integration of design workbench with
a documentation workbench. In my organization, the use of the Oracle INFORM software in the
data management process, helps us perform a number of different tasks such as setting up and
designing of trials, data analysis, keeping of trial statistics, generating reports to mention but a
few.
Furthermore, the integrated CASE tools assist in the integration of specification, design and
programming tools with a configuration management workbench and in the case of my
organization this happens with the use of the central designer tool as well as the User
Management Tool (UMT) that are used in the designing and management configuration of the
entire system. In so doing, the CASE tools help in improving the accuracy of the entire work
processes, a key issue to my organization.
More so, the use of integrated CASE tools leads to a reduction in the effort required to perform
activities such as software configuration arrangement, quality assurance, and document
production. Most of the activities are automated and are achieved by a click away. For example
in my organization, the movement of data to and from the INFORM software where it is
analyzed is performed so easily by the import and export tools that are built in within the entire
system. This tool also has a filtering feature that helps to sort the data and ensure that is has the
correct attributes as required for processing. The use of the UMT also helps in setting up the
parameters for the edit check specification that help to ensure the quality of the product by only
allowing the data with the correct specifications to be used while rejecting the unclean data.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 29
Once more, the use of the integrated CASE tools lead to smooth transfer of information (models,
programs, documents and data) from one tool to another through the automation process. This is
especially so in organization when it comes to the transfer of data from other tools involved in
the process such as the central designer tool as well as getting information from the other sites
and data repositories for use in the study. Also, the data process involves moving data from one
place to another sometimes for validation reasons especially when it comes to the data of Severe
Adverse Events (SAEs) in which case data is moved back and forth from the safety department
to the data management department in a bid to ensure completeness.
Worth noting also is that the use of the integrated CASE tools leads to increase in project control
that is achieved through better planning, monitoring, and communication throughout the entire
system building project. This is because all the data about the project can be got in one place.
Therefore each of the operators is able to derive any reports as far as the performance of the
project is concerned and this helps in keeping entire team well informed about the project. Also
communication is made easy as each operator authorized to log in can view the status of the
project instantly as they are all centralized. This in turn leads to improved coordination among
staff members who are working on large projects. For example, in the case of my organization,
because of automation and integration of the INFORM system, were are able to load data from
our other partners in the investigation process such as the Clinical Research Organizations
(CROs) and coordinate with them on very crucial matters in regard to the project. This increases
our efficiency in the processes and increases productivity and in the long run greater
profitability.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 30
Analyzing System Software Implementation and Maintenance Up to the End Life Cycle
Analyzing the governance (responsibility, authority, and accountability for tasks and
decision making) for the implementation of a software application, and why this is a
requirement in my organization of choice:
Governance in corporate terms may refer to the number of processes, customs, policies, laws,
and institutions which have impact on the way a company is controlled and managed. Important
themes of corporate governance is the nature and extent of responsibility and accountability of
people in the business, and mechanisms that try to decrease the principal-agent to the issue. So
far a number of countries have already issued governance, transparency and accountability acts
to enforce the private as well as the government sectors to implement procedures and practices to
ensure effective governance compliance.
On an organization level, the firm’s top management formulates policies and procedures, in
addition to the federal laws and regulations that act as a guide to the software developing team
during the system life time and implementation processes. Such policies and procedures may
include the privacy policy, the compliance policy, security and IT infrastructures computer use
policy, as well as industry and Standard Operating Procedures. These are aimed at creating and
ensuring accountability, responsibility as well as authenticity about the various system
development processes. It important to note that effective governance for Service Oriented
Architectures (SOA) defines rules for their operational and organizational structure, as well as
technological rules, for the entire life cycle (Holyoake, 2014).
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 31
Governance, thus seizes on an organization's strategies and objectives and implements them
through IT solutions. There is thus a great need for governance at every stage of the life of the
system from requirements stage to the maintenance stage.
Organizations need to actively design governance and be able to know where and when to
redesign the systems if necessary to ensure the correct code in place. Organizations should
involve the senior managers in the process of software implementation who will help in making
important decisions about the available choices in the process such as the when to introduce the
Service Oriented Architecture in the software.
Governance is also responsible for providing the right incentives to the people involved in the
process of software implementation so as to give them morale and confidence while carrying out
their duties. It is the role of governance to ensure that such incentives are well aligned with
governance structures so as to bring about success of the entire projects.
Because of the complexity that is involved in the implementation of software applications, it
requires an infrastructure in the form of monitoring and implementation mechanisms for
regulating and guiding development processes and thus requires that governance ensures
responsibility, accountability as well as authority to help guide the activities in the right
direction. By setting up policies such as the security and the compliance policies, governance
aims at ensuring that the employees work within their expected limits while ensuring and
observing that the implementation of the software application is done within the law.
More so, and very crucial to note is the fact that while the development team is responsible for
the daily activities in the implementation process such as designing, testing, modelling to
mention but a few, the decision to make any changes to the software implementation are only left
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 32
to the top management to make them and approve them after they have make consultations with
the stakeholders if necessary. This is done to ensure that there is effective management and
accountability of the activities performed. Moreover, the top management would be responsible
and accountable for the overall success or failure of the projects.
Analyzing the challenges in a geographically distributed development team, and in
contracting out some or all roles of the development team:
Geographically distributed teams means that organizations would be forced to engage in the use
of virtual teams so to be able to carry conduct their global business transactions and activities.
Firms, also obtain other services such as computing and internet services through outsourcing
from other organizations. As a result of these, firms face a number of challenges that include but
are not limited to the following;
One of the major challenges that face virtual teams is lack of trust amongst the team members is
when contract workers, outsourced workers, and or multi-generational workers are used on the
team. According to (Siakas and Siakas 2008) article, the authors note that trust is a culture bound
issue and therefore calls for cultural awareness and special precautions for organizations with to
engage in multinational businesses endeavors.
Another big challenge of distributed teams is the factor of time differences that makes it difficult
for teams to be on the level of discussion especially for issues that are time sensitive. This may
lead to poor collaboration as well as poor cohesion within the team members. They may thus
start singing different tones or things getting out of phase with each other; and this may affect the
progress of development process.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 33
Morse, the differences in cultures and values that do exist in the different parts of the world also
pause a big challenge to the distributed teams as it may be lead to poor collaboration between the
teams as well as escalating the problem of mistrust. There is a need to ensure that organizations
respect and align their business processes with the differing cultures and this may involve some
costs to the business in terms of time and money.
Distributed teams also face a challenge of IT security governance and risk mitigation especially
due to the different laws and regulations about information security that do exist in different part
of the world. Therefore, firms may find it difficult to setting a uniform policy that works for all
the firms since some of the aspects that are applicable in one country may not be applicable in
another.
Assessing the role of process improvement for software implementation in your
organization:
Process Improvement may be defined as a proactive task of identifying, analyzing and improving
upon existing business processes within an organization for optimization with the aim of
achieving better results or for that matter, better quality standards. This may be achieved by use
of such models as the Capability Maturity Model (CMM) (Paulk, Curtis, Chrissis, and Weber,
1993); more recently CMMI (SEI, 2002). It involves a systematic approach to closing any
existing gaps within the system through identification and elimination of the causes of the below
specifications quality, process variation, and non-value adding activities Paulk et al, 1993). For
example, if some loopholes are identified in the way in which firewalls are implemented in
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 34
network, then process improvement would help to ensure that such loopholes as identified are
closed to ensure efficient and proper working of the firewalls.
Also in my organization, process improvement may involve such activities as fixing of bugs,
adding new features, or even replacing them with new, modern and more efficient ones in a bid
to improve its performance. According to Hale, Hale and Smith (2011), software maintenance
involves all those processes including fixing of bugs as well as well as correcting any errors in
the source code so as to improve on its performance and maintaining alignment with operational
needs of the organizations, and in the long run bringing about improved results and overall
increased efficiency. In my organization, this will be very important in ensuring that the software
infrastructure is up to date and working efficiently; and also in terms of security, this may
include constantly updating the anti-virus software with the current versions in the market, as
well as upgrading to the new forms of the data processing software in use such as Inform and
Medidata platforms.
It also involves the use of up to date firewalls that help to prevent unauthorized access to the
company’s network and thus keeping the systems and IT infrastructure secure and in good and
efficient working conditions. Not forgetting the constant training that is given to the employees
in a bid to improve on their skills and their ability to handle organizational processes more
efficiently and responsibly, thus enabling them to offer better services that lead to increased
productivity and competition on the market.
Furthermore, process improvement in my organization involves periodically carrying out an
impact assessment of the systems including security assessments aimed at identifying and
finding out the possible threats to the processes and working out a plan to manage and mitigate
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 35
them. All this done in a bid to ensure that the system works more efficiently and is more
competitive in the market, especially considering today’s competitive trends.
Last but not least, process improvement in my organization too involves the hiring and replacing
of new employees to ensure that there is a continuous flow of work without interruption the
improvement process and thus keeping the processes efficient. In addition to the constant
replacement of the workers, my organization ensures a detailed and well documentation of all the
activities and processes that take place during process improvement. This is very important to
maintain a continuation of the process in case some critical employees abruptly leave the
organization.
Evaluating the benefits of CMMI as a process improvement methodology, and briefly
compare it to competitive and complementary process improvement approaches (such as
COBIT):
The Capability Maturity Model Integration (CMMI) is a process appraisal tool that benefits the
organization by providing a common, integrated vision of process improvement. It is a process
model that provides a clear definition of what an organization should do to promote behaviors
that lead to improved performance through carrying out an impact assessment on the existing
processes and systems thus providing the policy makers with the ability to make the best choices
on how to make corrections and improvements that brings about efficiency in the organization.
The model operates through five stages/levels of maturity that include the initial stage, the
managed stage, the define stage, the quantitatively managed stage, as well as the optimizing
stage in which a number of processes take place ranging from measurement and analysis,
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 36
organizational training, quantitative project management as well as casual analysis and resolution
respectively.
The CMMI through its process provide the a number of benefits to organizations;
There will be a decrease in the costs of production due to the improved process as a result of
using the CMMI model. The organization’s IT processes become more efficient and thus
reducing its average costs of production because less unit costs will be required to produce the
same amount of output as before. Therefore, organizations can favorably compete in the market.
Also due to the improvement in the processes, there is also a general improvement in the quality
of the products of the organization. This will in turn lead to increased customer satisfaction and
the firm’s increased share in the market and in the long run this will lead to growth of the firm.
Furthermore, the CMMI as a process model helps the organization to improve its productivity by
helping to identify and remove the obstacles in the systems that would have slowed it down. For
example, when the security issues such as viruses are identified and debugged or managed, then
the system becomes more efficient and this leads to increased productivity. The very long run
benefit of all the above incremental processes is an increased return on investment to the
organization.
Worth noting also is that the result of improved efficient processes will mean that the
organization will be able to operate on schedule and be able to deliver its products in a timely
manner and this further increases the firm’s confidence amongst its customers and will lead to a
more customer satisfaction and increased market share.
Brief comparison with COBIT:
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 37
COBIT is an IT governance framework that helps to ensure proper control and governance over
information and the systems that create, store, and manipulate IT. It therefore provides a
framework for putting controls in place to ensure that an organization is compliant with
regulations. On the other hand, CMMI is a set of integrated models that include software
development, system engineering, and integrated product and process development, people and
other initiatives on process improvement across a project, a division, or an entire organization.
Whereas the COBIT provides for thirty four identified IT processes and their corresponding
high-level control objectives and management guidelines, including processes of maturity
models, the CMMI on the other hand is an appraisal tool that can be used by an organization in
four domains of plan and organize, acquire and implement, deliver and support as well as
Monitoring and Evaluating. It therefore provides for a common, integrated vision of
improvement of software processes while providing a clear definition of what an organization
should do to promote behaviors that lead to improved performance. Moreover, while COBIT is
an industry standard, CMMI is not and therefore achieving a level of maturity with CMMI is a
rating and not a certification as in the case with COBIT.
Also while COBIT provides for the control of the IT policies and procedures, the CMMI
provides for a process a set of tools aimed at improving an organization’s processes and make
them more efficient to enable the firm achieve its goals and objectives. COBIT enables a clear
policy development and good practice for IT control throughout organizations and emphasizes
regulatory compliance, while enabling alignment of such policies and practices with an IT
governance and control framework.
Nevertheless, it is crucial to note that both frameworks, the CMMI and COBIT are IT
governance frameworks and provide supporting toolsets that enable managers to bridge the gap
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 38
that exist within organizations processes and procedures and thus helping them to improve their
service delivery, efficiencies and thus leading to increased productivity. While the COBIT
bridges the gap by means of control requirements, technical issues and business risks, the CMMI
model bridges the gap by identifying the possible loopholes through assessments and appraisals
and providing a common, integrated vision of process improvement.
Analyzing system life software maintenance, including end-of-life planning and data
migration to replacement system:
Software maintenance refers to the process of enhancing and optimizing deployed software, as
well as remedying defects that may have occurred during the implementation process. It’s a
continuous process aimed at correcting faults, improving performance or other attributes, or
helping to adapting the product to a modified environment. Therefore, it involves all those
activities aimed at identifying errors in the code and making changes to the software in order to
correct defects and deficiencies found during field usage as well as the addition of new
functionality to improve the software's usability and applicability. Several models such as the
Boehm model as well as the CMMI have been developed to help the maintainers in the process
of software maintenance.
Maintenance must therefore be carried out in order to keep systems in optimized working
conditions and the process thus includes but is not limited to; the correcting of faults, improving
of designs, interfacing with other systems, implementing enhancements, migration of legacy
software as well as retiring of the software and replacing it with a new one; all this aimed at
ensuring a smooth run of the organization’s programs while using the software.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 39
Software maintenance is usually initiated by a change request carried from the users to the
management who then instruct the developers/maintainers to carry out the job. The job is carried
out by a group of maintainers whose major activities include overseeing and monitoring the day
to today activities of the software, carrying out any necessary modifications and ensuring that the
software performance does not degrade to unacceptable levels.
The process of software maintenance also involve carrying out an impact analysis on the existing
software in order to determine the scope of the fault, carry out a cost-benefit analysis of the
entire process and plan for the work required in order to achieve the objective.
The process of software maintenance can be managed through the use of the IT Service
Management (ITSM) structure in which case, the user keeps on interacting the service providers
in the process of identifying any upcoming faults and risks and ensuring that they are dealt with
in time. The service ensures that not only does the technology functions as we need it to, but also
ensures that when the unexpected happens, there are actions ready to be taken to mitigate and or
minimize the impact to business and thus saving the organization both time and money (Taylor,
2012).
Software maintenance is carried out by use of tools whose selection criteria depends on the
tool’s capability, features, cost/benefit, platform, programming language, ease of use, openness
of architecture, stability of vendor, and organizational culture (Hung, 2014). Therefore it is
crucial that teams choose the correct tools that will help them to accomplish the job at the lowest
possible cost.
Important to note however is the fact that although software maintenance may keep the software
in a good working condition and giving results, there would be a time when it would be deemed
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 40
necessary to end its life. This may be due to a number of scenarios that may include but are not
limited to technology innovation and development driving changes in the product, market
demands, or the products simply mature over time and there is need for them to be replaced by a
functionally richer in technology.
Although the end of life period for a product means that it cannot be produced any more, some
support do remain existing and extended for a period of time in terms of technical support, spares
parts to mention but a few depending on the type of service contract in place until the product is
in the obsolete state. This is done to enable the users carry out their operations as they may
prepare to migrate to a new system all together. Once on the obsolete state, then nothing more
can be done on the software product and its life generally ends.
The migration of systems involve the act of transferring data and programs from one computer
system to another, either physically in which case, the old hardware devices are no longer
capable of meeting the needs of the system and therefore they need new ones or it may also take
the form of a data based migration, in which case only files and data are transferred to a new
operating system within the old hardware. Note that when system migration is purely data-based,
the move to the upgraded system requires only the transmission of data whereas when migration
is purely physical, it will require the transfer of the entire system, including data and programs,
to a new physical computer hardware, and latter usually occurs when replacement parts for the
system are no longer available or economically feasible.
It is also crucial to note that the process of migration may unfortunately and inevitably involve
periods of downtime that will affect the speed and efficiency of work. Thus in order to prepare
for such unpleasant hiccups and be ready for business continuity, it is important that the IT team
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 41
conducts backups of the system and line up a skilled team of system maintainers to help with any
faults as may be identified.
By and large, it is crucial to note that software maintenance is not an easy job considering
today’s competitive world and the level of continuous process improvement that is required to
maintain the quality expected by the users of the software application. The processes involves a
long planning process even as far back as the development stage and testing stages and it is no
wonder therefore that above 80% of software lifespan costs are incurred during this stage. In
order to reduce or manage such high cost, organizations need to constantly monitor, report,
analyze as well as improve on the software systems.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 42
Analyzing the Process of IT Service Management in Software Implementation and
Maintenance
PART A
Analyzing the role, or potential role, of IT service management (ITSM) in risk
management for delivering IT services to internal and external clients:
IT Service Management (ITSM) may be defined as a process-based practice intended to align
the delivery of information technology services with needs of the business, which emphasizes
benefits to customers. While the process at its core concerns technology, its focus on the client is
key. The process of IT service management life cycle includes working with service design,
service operation, service transition and most important the laying of the service strategy. It is
within this service strategy that organizations begin to consider the opportunities and challenges
including the risks ahead of them and how to achieve their objectives.
As part of the standard procedure, the IT service management strategy involves production of the
service catalog that lists the type of services and features involved with the technology, their
descriptions, what they mean, who provides them, as well as their bottom line impacts on the
entire business. Therefore by providing such a detailed information that identifies the critical
areas of the technology being offered, as well as their impact on the service, IT service
management (ITSM) paves a good ground for risk management since such information is very
vital to the process.
Note that on the other hand risk management may be defined as all those processes that are
involved in identifying the risks, assessing them, planning and implementing the necessary
remedies. It involves the forecasting and evaluation of uncertainties, together with the
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 43
identification of procedures to avoid or minimize their impact. Thus, by understanding these
areas through IT service management processes, it helps in understanding the risk and eventually
how to manage it.
ITSM in its service agreements makes mention of such things as incidents and problems which
respectively refer to the occurrence of an unexpected event and occurrence of multiple incidents
of the same type. By availing such reports to the organization’s governance, ITSM enables the
organization to easily identify such incidences and thus help in the process of managing the
associated risks.
Furthermore, ITSM through its service agreement makes a mention of a service continuity plan
that aims at ensuring continuity of business operations in case of a disaster or a catastrophic
service failure. The ITSM will include a plan of how to go about such an event, and in a way this
is part risk management as it supports its activities in one way or the other.
ITSM also takes into consideration the issue of reliability that applies to the level of stability that
a service is expected to provide. This level of stability is measured by the average time between
service incidents and is used as a service performance indicator against the expected scenario. In
trying to achieve this reliability, ITSM helps keep the levels of risk in a check by ensuring that
they don’t fall out of the expected norms.
All in all, from the above analysis, it can be said that ITSM is made up of strategy, audit,
governance as well as daily service practices that are applied within the life cycle, and all of
which, in one way or the other assist the risk management process especially in as far as the
identification, assessment, planning, implementation and communication are concerned.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 44
Evaluating how the use of IT service management (ITSM) might address the
implementation of best practices:
IT service management, in its core role of delivering IT services as well as aligning them with
the goals of the organization, also involve a continuous action of process improvement. This is
mainly to make sure that the services being delivered give the intended satisfaction to the
customers. In order to achieve this objective, the ITSM uses a set of practices/guideline set out in
the IT infrastructure library that helps to ensure that the delivery is done in the most utmost
manner while following the industry standards such as from COBIT and complying with the
related regulations in the field.
In many ways, thus the IT service management appears to resemble other industry models such
as the CMMI, and to incorporate the best practices like Six Sigma, guidelines from the
International Organization for Standardization and IT Infrastructure Library (ITIL) frameworks
(which is a subset of the ITSM), while at the same time allowing organizations to build strong
internal structures for alignment, integration and IT efficiency (Taylor, 2012). In addition,
models such as the CMMI-SCV, which are a collection of best practices are used in the process
of managing ITSM to help in administering service management process and in so doing, ITSM
serves to implement best practices in the software development and implementation process. In
fact ITIL represents a library of best practices as used by the ITSM, therefore use of ITIL which
is its collection of best practices indirectly addresses the implementation of the best practices.
Moreover, it can be realized from the above that the IT infrastructure library (ITIL) is a subset of
IT service management (ITSM) and IT service management is part and parcel of IT governance,
which governance aims at ensuring that policies and strategies are implemented and that
requested processes are correctly followed including measuring, reporting and taking actions to
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 45
resolve any issues identified all of which form part of best practices (Faber and Faber, 2010). In
so doing therefore ITSM might end up addressing the implementation of best practices in the
governance IT processes.
Analyze the benefits versus the challenges (for example, training and process overhead) of
ITIL:
The IT infrastructure library (ITIL) comprises a set of documented guidelines that include a set
of books, policies, procedures, and best practices framework for managing IT services. In its
guidance roles, ITIL covers a large area of the industry that includes but is not limited to
training, certifications, consulting, software tools, trade associations to mention but a few. The
result of these being put in effect are the benefits of increased knowledge, better and efficient
services, better resource utilization, reduced costs and henceforth increased productivity and
profitability to the organization.
It is important to remember that ITIL aims at process improvement and in so doing brings to an
organization numerous benefits such as reduced rework, improved project deliverables and time,
elimination of the redundant work, as well as improving on the availability, reliability, and
security of mission critical IT services.
However, it is crucial to note that although ITIL brings to the organization many benefits, there
are challenges that come with it along the way. The most notable one is the confusion about the
definition, implementation and requirements of ITIL and such is still holding some data center
managers from adopting this ITSM framework. ITIL seems to involve a large area of practices,
procedures, books to mention but a few, which are not very specific to particular areas and this
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 46
becomes very difficult for the organizations to clearly know which one to use at a given time and
in a given circumstances.
Also the implementation of the ITIL within an organization will not come as a simple piece work
as it involves changing the way some of the things will be done after its implementation, and for
this matter it needs a lot of thinking and planning. ITIL brings a whole new level of practices and
procedures to the organization to guide it in achieving its goals and therefore changes the way
things are done in an IT organization. This may require a lot of training and sensitization of the
employees least it would meet resistance from the employees and this may be costly to the
organization.
PART B
Contrasting the benefits of adopting best practices versus the need for innovation in
enterprise processes to adapt to today's dynamically changing technology and globally
competitive environments. Use the knowledge that you have gained throughout this course
to inform your analysis:
In simple terms, best practice can be defined as the best way of doing something whereas
innovation can be defined as introduction of something new, which may be an idea, device or
methodology. In as far as software development and implementation is concerned, the use of the
best practices ensures that the system developed works well to the satisfaction of the
stakeholders and customers by ensuring that the process follows the industry standards as set out
in the various guidelines. On the other hand, innovation will mean coming up with a new system
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 47
or technology that aims at improving on the shortcomings of the existing system and thus leading
to further increased customer satisfaction.
Furthermore, organizations implement best practices as a way to improve service to the
customers; however, they also enjoy the cost benefits from improved productivity as a result of
streamlining work processes. In so doing, organizations benefit through reduced rework,
improved project deliverables and time, elimination of the redundant work, as well as improving
on the availability, reliability, and security of mission critical IT services. Through innovation on
the other hand, organizations enjoy benefits of sustained competitive differentiation that helps to
compete favorably while the customers enjoy the benefits of a whole new product or technology
including status, uniqueness and greater satisfaction.
Also important to note here is that, however much an organization uses best practices to keep a
product alive and reap the many benefits that come along with it, there reaches a time when it
becomes inefficient and not cost-effective for the product to be produced on the market,
especially due to changing times, demand and competition from the rival firms, and hence the
product goes into an absolute stage. At this juncture and for such reasons as mentioned above,
there arises a need for an organization to look out to the other possibilities as replacements of the
product so as to keep the organizations more competitive and hence forth the aspect of
innovation sets in. Innovation usually helps to solve an existing problem, differentiates the
organization’s product or service from others and keeps the product original and in a way
satisfies the owner’s egos.
Therefore, although adopting the best practices offers numerous benefits to the organizations
including but not limited to process improvement, reduced costs, reduced reworks, increased
efficiency as well as increased productivity to mention but a few, there comes a point where their
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 48
use can no longer produce the benefits to enable the product compete favorably in the market.
Thus, a need for innovation to produce new products with new technology that can favorably
compete with their rivals.
It is also crucial to realize that while innovation is very important to organization, it can be done
in isolation without considering the implementation and use of the best practices such thinking
about its effect on the ecosystem and corporate social responsibilities. Therefore, as an
organization try to reap the benefits of innovation, they too have to consider the best practices
involved in the process.
One can therefore say that while innovation provides an important step to keeping the firm
competitive in the market by producing new products that are unique and gives the firm a unique
position in the market, best practices on their part keep organizations competitive through
process improvement activities as well as providing guidelines that enable firms to produce and
provide services in a manner that is acceptable by society and respective industries.
Assessing the approaches for balancing best practices and innovation. Use your chosen
organization and related literature to support your perspective:
Although innovation is undoubtedly inevitable especially due to the changing markets and the
need for organizations to keep competitive in the market, there is an equally need to keep the
best practices in place so as to enable the products to serve interests of society. Therefore a great
need for a balance between the two concepts as firms strive to achieve their goals and objectives
in today’s rapidly changing and competitive market.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 49
While trying to strike a balance between the two, the organization can approach this by looking
at such things as the attributes of the products to ensure that they are in line with satisfying the
interests of the customers, considering the legal implication of the product, the regulatory
implication, and the general suitability as far as giving the customer satisfaction is concerned,
while at the same time monitoring the market trends to ensuring that the product is up to date and
competitive.
The organization that produces the software/systems should assess the new product and find out
how potentially it would fit in the customer’s asset allocation mix, asses the performance of the
product and how it will help to diversify the customer’s portfolio. The organization should
therefore look at such things as the universality of the product, or whether the intended
customers will be able to use it alongside other systems during the production process. For
instance, apple the manufactures of the MAC computers were forced to allow the use MS office
on their machines in a bid to ensure that their products give greater satisfaction to their
customers, while at the same time making them more competitive in the market.
Also, it is important that the organization looks at the product’s fees and expenses as compared
to other products in the market and evaluate whether it will be able to compete favorably against
it rivals in the market without compromising the best practices in the industry. In addition,
whether or not the product is desired in a way that will meet and satisfy the current market
demand as well as whether or not the product is desired to comply with the regulatory
requirements.
Therefore, looking at such areas as mentioned above will help the organization to identify and
determine whether the product in progress is a fit and compatible with the organization’s goals
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 50
and objectives, and whether it reflects the desirable balance between innovation and adherence to
best practices.
Conclusion:
All in all, IT life cycle management is a long process that involves all the activities, procedures
and processes that are aimed at enabling the production of an IT system/software while balancing
the roles of innovation and best practices that apply in the industry. This can be achieved through
the use of industry recognized tools and models such as CMMI, Six Sigma, ITIL to mention but
a few all of which assist in evaluating, analysis as well guiding during the development and
implementation processes. The life cycle focuses on the development, implementation, and
maintenance, while ensuring process improvements that stretch up to the end of the life cycle and
before migration to the new system. The process also involves bringing all the stakeholders of
the system on board and ensuring that their objectives and demands are met within the process of
development, but most important too is that in a dynamic environment in which organizations
are competing for the market, the process of SLCM will involve constant process improvements
and where possible and necessary, innovation of new products that are superior and offer a better
customer satisfaction in a bid to maintain the market share and remain competitive.
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 51
References
Dawson, M., Burrell, D., Rahim, E., & Brewster, S. (2010). INTEGRATING SOFTWARE
ASSURANCE INTO THE SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC).
Journal of Information Systems Technology & Planning, 3(6), 49-53. Retrieved from
http://web.b.ebscohost.com.library.capella.edu/ehost/detail/detail?sid=4582003f-8eb7-
4794-bb1b-
b3a1420fa24b%40sessionmgr110&vid=0&hid=103&bdata=JnNpdGU9ZWhvc3QtbGl2Z
SZzY29wZT1zaXRl#db=iih&AN=63283583
Faber, M. and Faber, R. (2010). Office of Government Commerce; ITIL and Corporate Risk
Alignment Guide. An introduction to corporate risk and ITIL, and how ITIL supports and
is assisted by Management of Risk. Retrieved from http://www.best-management-
practice.com/gempdf/ITIL_and_Corporate_Risk_Alignment_Guide.pdf
French, A. M. (2011). Web development life cycle: A new methodology for developing web
applications. Journal of Internet Banking and Commerce, 16(2), 1-11. Retrieved from
http://search.proquest.com.library.capella.edu/docview/915652245?accountid=27965
Garzia-Diaz, N., Lopez-Marin, C., and Chavoya, A. (2013). A Comparative Study of Two Fuzzy
Logic Models for Software Development Effort Estimation. 3rd Iberoamerican
Conference on Electronics Engineering and Computer Science, (CIIECC). Vol. 7, Pages
305–314. DOI: 10.1016/j.protcy.2013.04.03. Retrieved from
http://www.sciencedirect.com/science/article/pii/S221201731300039X
Hale, D. P., Hale, J. E., & Smith, R. K. (2011). Evaluation of work product defects during
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 52
corrective & enhancive software evolution: A field study comparison. Database for
Advances in Information Systems, 42(1), 59-73,7. Retrieved from
http://search.proquest.com.library.capella.edu/docview/853645530?accountid=27965
Holyoake, T. (2014). How to Implement a SOA governance strategy. Computer Weekly.com.
Retrieved from http://www.computerweekly.com/opinion/How-to-implement-an-SOA-
governance-strategy
Hoffer, J. A., George, J. F., & Valkacich, J. S. (2014). Modern systems analysis and design (7th
ed.). Upper Saddle River, NJ: Pearson. Kay R. (2002). Quick Study: System
Development Life Cycle. Retrieved from Development_Life_Cy
http://www.computerworld.com/s/article/71151/System_cle
Hung, T. (2014). OpenStax CNX - Software Maintenance: Maintenance tools. Retrieved from
http://cnx.org/contents/625ae955-8b6a-4070-8174-0369e6a759c8@1
Majid, A. R., Noor, M. L., Adnan, W. and Mansor, S. (2010). A Survey on the User Involvement
in Software Development Life Cycle from Practitioner’s Perspectives. 2010 5th
International Conference on Computer Sciences and Convergence Information
Technology (ICCIT), pages 240–243. Retrieved from
https://courserooma.capella.edu/bbcswebdav/institution/BMGT/BMGT8216/Version071
4/Course_Files/cf_Majid_A_survey_on_user_involvement.pdf
Minton, G. (2011). Revisiting proven development processes. Mortgage Banking, 71(12), 88-89.
Retrieved from
http://search.proquest.com.library.capella.edu/docview/887913063?accountid=27965
Running head: BMGT8216: Innovating IT life Cycle Management Maurice Kabeireho 53
Paulk, M., Curtis, B., Chrissis, M., Weber, C., (1993). Capability Maturity Model for software,
Version 1.1. CMU/SEI-93-TR-24, Software Engineering Institute, USA.
SEI, (2002). Capability Maturity Model Integration (CMMISM), Version 1.1. SEI, CMU/SEI-
2002-TR-029. Retrieved from http://www.sei.cmu.edu/reports/02tr029.pdf
Siakas, V. K., and Siakas, E. (2008). The need for trust relationships to enable successful virtual
team collaboration in software outsourcing. International Journal of Technology, Policy
and Management, Vol. 8, 1, pp.59 – 75. DOI: 10.1504/IJTPM.2008.016181. Retrieved
from http://www.inderscience.com/info/inarticle.php?artid=16181
W.K. Kellogg Foundation (2004). Logic Model Development Guide. One East Michigan Avenue
East Battle Creek, Michigan 49017-4058. Retrieved from
http://www.smartgivers.org/uploads/logicmodelguidepdf.pdf
West, M. (2011). Developing High Quality Data Models. Elsevier, Inc. retrieved from
http://www.tdan.com/view-articles/15402
Taylor, S. (2012). Service intelligence: Improving your bottom line with the power of IT service
management. Upper Saddle River, NJ: Prentice Hall.