Reuse Comes in Several Flavors Achieving a Better Return on Software Series
|
|
|
- Lambert Bryan
- 10 years ago
- Views:
Transcription
1 whitepaper Reuse Comes in Several Flavors Achieving a Better Return on Software Series Martin Griss Flashline Software Development Productivity Council The Potential Benefits of Reuse Key Message Reuse can be practiced in a variety of ways and customized to accommodate different business goals, pace, and investment level. Principles Different flavors of reuse vary the amount of: Proactive management of assets and process Proactive design and architecture of assets to enhance reuse Top-down, pre-work, versus bottom-up incremental reengineering Three Primary Modes of Reuse A simple reuse framework will distinguish (and appropriately combine) at least three kinds of reuse: Facilitated Managed Designed Topics of Interest The choice of mode(s) and the related people, process, methods, and tools needed depend on domain, situation, resource, and readiness. Several issues will be discussed. People, process, and tools Domain Engineering Component mining Open Source vs. Systematic Reuse The general concept of reuse is well known: by developing software assets once, and encouraging others to reuse them rather than developing assets from scratch, a variety of significant quality, time, and cost benefits result. In certain circumstances these benefits can be quite dramatic a three-fold or greater reduction in time-to-market, for example. However, in order to maximize the potential of these benefits, it is important to align the reuse model chosen with strategic business goals 1, customizing the reuse model as necessary. Typical reuse-friendly business goals include: Improved Business and IT agility Reduced development and maintenance time Improved quality Reduced development and maintenance costs Other issues that will affect your decision regarding what kind of reuse program to establish include the scope and pace of the program, the nature and availability of the resources necessary to establish the program, and the existence of synergistic or competitive software improvement initiatives. Selecting a Reuse Flavor Within the reuse community, several approaches to reuse have emerged. Practitioners can select different policies, processes, and technologies to match a reuse program to the business goals and capabilities of an organization. Some of the learning has been summarized in a variety of Reuse Maturity Models, 2,3 suggesting that the benefits, scope, and formality of a reuse program grows as more experience is gained. There are three basic modes 2 in which software asset reuse can be practiced in an organization; there is also a question of how broadly across the organization a practice should be applied. Facilitated (or Encouraged): In this first step beyond totally ad-hoc reuse, a small investment is made to make it easier for people to practice reuse, but there is no requirement that they do so. Tools and policies are established to make it easier to submit, publish, find and use reusable assets across the requisite organization. Some support is provided to track usage and inform consumers of changes to the assets they have retrieved. Some evangelism and incentives are employed to encourage participation as either submitter or consumer, but very little extra effort is directed at validating that good assets are created, that the assets are the best to reuse, and that they are in fact reused. Investment is made in a low cost (or no cost) repository solution, with very limited infrastructure and little overt interference with developers. At this level there is modest payback and minimal if any measurement. There may be a reuse advocate or evangelist to help encourage people to practice reuse, but very little explicit support is provided. 1
2 Table 1 - Characteristics of the primary reuse flavors Ad hoc Reuse Facilitated Reuse Managed Reuse Designed Reuse Theme Individuals find assets on their own, sharing with colleagues as they choose. Organization encourages and supports reuse with limited resources, infrastructure, and policies to make reuse easier. Organization enforces reuse practice through policies, resources, tools, and people. Organization invests in carefully designing assets for reuse, choosing assets for domain or product line. Assets are architected or reengineered to fit together. Typical Reuse Level Varies, usually unknown 5-15% 15-50% 40-90% Relative Cost Minimal Low Medium High People / Roles Individual effort; no reuse roles. Evangelist, reuse facilitator/ web-master/librarian. Facilitated roles plus librarians/registrars, certifiers/reviewers, process engineers Managed roles plus architect(s), domain analyst(s), component developers, component support specialists. Process & Policies None Incentives, asset check-in process, limited review before publication. Reuse-adapted process, mandated with specific goals. Reuse reviews, and asset documentation, packaging, and certification guidelines, specified metrics to be collected. Some domain analysis, reuse-oriented architecture, specific steps to design for and with reuse. Tools & Technology File system or minimal web site; . Self-use repository or Web site, submitters may add some metadata to improve search and evaluation. Registrar-monitored repository, extensive metadata, multi-project source code control, asset quality assurance, change notification, utilization measurements. Requirements and portfolio management tools; frameworks, standards, generators; change management tools. Managed (or Mandated): In this mode, formal structures, policies, and tools for enforcement or control are implemented to ensure that reuse is practiced and results measured. Additional policies, reviews, process steps, and tools are used to ensure an adequate supply of high-quality assets. Similarly, reviews, process steps, and release checkpoints are required to ensure that an appropriate effort is expended to reuse the recommended assets as-is, rather than developing a new asset from scratch, finding some alternative asset, or radically modifying an asset. Reuse metrics are captured and reuse program ROI is measured. Designed (or Architected): In this mode proactive measures are taken to ensure that assets are developed to meet specific needs. Architecture and domain engineering techniques are used to determine which assets should be developed to cover more of the application space. Design for reuse guidelines, standards, and additional reviews ensure that high-quality, compatible assets are produced. This strategy works best when developing for a specific application family or product line within a relatively stable domain. A key factor in the decision to adopt either the Managed or Designed mode is the increased expenditure of resources and management effort. More time and more investment may be required to design, develop, and certify the necessary high-quality assets, and increased management is required to ensure that people will use these assets. Additional training and organizational change may also be necessary, as well as a significant pilot demonstration program. The Managed and Designed modes also allocate the resources necessary to develop only those assets whose quality and flexibility 2
3 ensure a high probability of reuse. This additional effort is repaid in repeated reuse and the rapid development of higher quality applications. This strategy also minimizes the need to alter the assets, further enhancing quality by decreasing the repeated testing and maintenance needed with multiple versions of similar assets. Key difference between Facilitated and Managed is a more active style of management and larger commitment of resources. Key difference between Managed and Designed is amount of proactive development of reusable assets. The key difference between the Facilitated and Managed reuse modes rests in the chosen form of reuse program governance: the level of overt control exerted to enforce the practice of reuse in accordance with organizational policies and guidelines. At one extreme of Facilitated reuse there is minimal infrastructure (e.g., a self-publishing Website using WIKI or WebDav) and no designated reuse advocate or evangelist. At the other extreme you ll find a corporate reuse office with design-for-reuse guidelines and an incentives program. In either extreme, or at any point in between, the Facilitated mode leaves the decision to practice reuse to the individual developer. In the Managed mode, however, the practice of asset reuse is a requirement of the job. Enforcement is accomplished with either a light or heavy hand, with lightweight, Agile or Open Source processes at one end of the spectrum, and at the other, heavier RUP or CMM methodologies that have been extended for reuse. To support the Managed reuse objective, the governance model will require more organizational structure, monitoring, and measurements. These flavors (or modes) of reuse do not constitute a strict reuse maturity model. It is important to note that it is quite possible for an organization to choose Designed reuse, but to run it in Facilitated mode, rather than Managed mode. Effort could be proactively expended to design and construct high quality assets, or to establish a roadmap and targets for the discovery and reengineering of a domain of assets, but still leave it to individuals and projects to choose to use these assets. Encouragement, facilitation, incentives, and evangelism could be used to market these assets to developers in order to expand their use. Aspects of each reuse flavor can be mixed to achieve specific business goals. Ad hoc reuse no proactive organizational involvement. It is also worth contrasting ad hoc reuse from the other modes that require more resource and management commitment. Many individuals and some project teams practice an informal style of reuse looking for assets on the public or corporate Web; sending to colleagues asking for, or telling of, useful assets or starting-point code for cut and paste reuse; and looking for code in prior projects. Ad hoc reuse is important because it is the baseline against which the organizational reuse initiatives are compared. Ad hoc reuse is widely practiced today. The Internet, code collection sites such as AlphaWorks and SourceForge, and peer-to-peer sharing tools make informal reuse much easier. The key difference is that ad hoc reuse is driven by the individual (though an organization could discourage the practice by locking out the Internet, making a fuss over code provenance, and so on.), while the other three are clearly conscious, proactive organizational decisions. The words Tactical and Strategic are frequently used to talk about the intent and scope of a reuse program. The terms do not describe flavors of reuse organization, but rather are used to describe how and why an organization chooses to practice reuse, and how important reuse is to the business. Tactical: Reuse is used primarily as a technique to reduce time and cost, along with other software development improvement initiatives. Depending on the explicit improvement desired, this can be achieved through Facilitated, Managed, or Designed reuse. Strategic: Reuse plays a vital role in achieving the overall business vision and goals, and is a key corporate competitive strategy. Companies invest in time-to-market and flexibility tools and processes as part of their market growth initiatives. Typically, 3
4 achieving Strategic reuse requires that the reuse program be run as Designed and Managed, to support a specific domain (such as customer service or e-commerce) or to produce a specific product line (such as in financial services or travel-related services). How to Find and Use Assets There are a variety of different ways to create or acquire reusable assets; each approach has pros and cons. In practice, these coexist in most projects and organizations. No single method offers any distinct advantage over the others, so it is wise to be conscious of the choices, actively adjusting the strategy and investment profile as needed. Assets can be acquired via any of the following methods: With the utility asset library supplied with the operating system, compiler or application development environment (e.g., Microsoft ). Through purchase from a company or broker, usually without source (e.g., RogueWave, ILOG ). With source code, from an Open Source community (such as SourceForge ), a university, or IBM AlphaWorks. From an internal company repository. Through mining of legacy code or previous versions of products in the product-line. Through a swap, barter, or purchase agreement or contract with another internal group. Created as part of the regular product or application development process, then packaged and published to a corporate or local repository. Proactively defined to meet the needs of new projects, then developed prior to an application development project, or as a sub-project. Through the evolution, reengineering, or wrapping of existing assets obtained from another source, in order to be more appropriate to current and future projects. Created by a distinct component development and maintenance team that develops components and Web services only for release to others. Any of these sources can be used with either Facilitated or Managed reuse the key difference is how much quality control is exerted before publishing and recommending the use of any asset. In some cases, an assessment of merit or grade is associated with assets of different quality and value. Assets can then be promoted to higher grades and their use encouraged or mandated. Also, in Managed reuse, some effort will be expended to control the proliferation of multiple versions of the same or similar assets, so that redundant maintenance and support can be avoided. Similarly, Designed reuse can use several of these sources. The key idea is to have a plan or roadmap of which domains are considered important to the organization, and how assets from disparate sources are meant to operate together. This plan can then be used to guide the harvesting, reengineering, purchasing, and/or purposeful development of the required assets. Keep in mind that Designed reuse does not automatically imply expensive new development; rather it is a strategic choice to limit and focus investment and energy on the important assets. 4
5 Major approaches to asset development and ownership organizational structures: Project teams develop and own assets specifically for their use. Costs borne by the developed for project. Assets shared where possible. Project teams develop and own assets with some awareness of needs of other projects. Development and maintenance costs shared with other projects. Centralized team (e.g. and architecture team) or shared services group develops and maintains assets for use by multiple projects. Costs can be absorbed or shared on a per use basis. There are several orthogonal dimensions that can be used to analyze your situation. Planned, proactive design, and development of assets vs. ad hoc/byproduct discovery/mining. Do you perform an explicit domain analysis and asset inventory to identify promising candidates, perhaps for new development? Or Do you determine at the end of a project which code or other artifacts are the most reusable? Do you go hunting for reusable pieces as needed? Top-down vs. bottom-up design/development/discovery of components. Do you develop a large-scale use case and architecture design first, leading to subsystem design, and then create new components? Or Do you perform an asset inventory, followed by (mechanical) mining from existing systems or ongoing projects? Waterfall vs. incremental/iterative vs. concurrent development of components vis-à-vis development of the applications using them. Do you develop components first, then applications? Or Domain engineering produces reusable assets for an application family or product line. Domain analysis determines the common needs and feature set of an application family or product line. Domain analysis produces a roadmap for future component development or harvesting Do you develop a cycle of components then a cycle of product? Or Do you engage in parallel development of both components and applications? (This is easier with multiple teams) Same vs. different project teams produce components and applications. A key differentiator is the existence of a plan to develop and release components, and specifically to proactively look for specific kinds of components for subsequent reengineering, re-documentation, and/or re-packaging, rather than just finding them along the way. Asset and Reuse Initiative Support In a similar vein, there are a variety of ways in which the reusable assets can be supported, maintained, and evolved. Supported: Assistance in using an asset is provided through , consulting, training, additional documentation, and mentors. Maintained: Reported/discovered defects to assets are corrected. Evolved: Work is performed to add requested or planned features to assets. In general, this additional work can be provided centrally, regionally or locally by the individual asset consumer, by the original asset producer, or by specially chartered support teams. The specifics depend on the scope of the reuse initiative, on the amount of support, on the organizational culture, and amount of control, and, to some degree, on the mode of reuse. Also, some care and feeding of the overall reuse initiative will be required, including quality assurance, training, process enhancements, acquisition, and operation of a repository, reporting, and administration of an incentive program. These activities and 5
6 budgets can be centralized or regionalized into one or more reuse support organizations, or largely distributed to developer or asset consumer individuals or teams. Here again, the specifics depend on the scope, resources, and culture of the organization, and the level of control. Typically, in Facilitated reuse there will be little investment in the support, maintenance, and evolution of assets, other than that provided by volunteers who contribute or use assets. Similarly, there will be minimal investment in administering the reuse program, other than perhaps the care and feeding of a Web site, some incentives, and periodic promotional events to encourage participation in the program. An important task in Managed reuse is to decide how much to invest in support, maintenance, evolution, and program administration, and to ensure that the investment yields an appropriate return. This is one of the primary functions of reuse metrics. In Designed reuse, additional effort is expended in proactively identifying, reengineering, and/or developing assets, so even more effort is needed to encourage/ensure that the right assets are developed and used. The Role of Domain Analysis and Domain Engineering Domain engineering (DE) is a process that produces reusable assets (components, Web services, generators, frameworks, models, documents) for subsequent use in the development of applications or product line. Domain analysis (DA) is the front part of this process, which analyzes the anticipated applications, technology trends, standards, and existing assets to develop a model of commonality, variability, and initial chunking of features into reusable assets. Domain analysis should not be confused with waterfall/upfront development. It is a process, perhaps concurrent with other development processes, that is used to identify appropriate reusable assets. Some form of this process is an important part of, and most appropriate for, Designed reuse, but can also be used in Managed or even Facilitated reuse. DA can be used to create a roadmap of required variability and reusable assets, which can then be used to drive the creation, either upfront or incremental, of components as applications are developed. DA can also help to identify which components to harvest from existing applications. Domain Analysis, Engineering, and Architecting will be addressed in greater detail in a future white paper. Component Mining As mentioned above, component mining (or harvesting) can be a useful way of finding assets in any of the flavors, though more systematic mining will be performed primarily as part of Managed reuse (wherein a directive to find and use assets is issued) and Designed reuse (wherein the objective is the identification and development of appropriate, domain-specific assets). Component mining can be either a bottom-up or a top-down process. With a bottomup approach, developers use tools based on cohesion/coupling metrics 4 to find candidate assets within existing legacy systems. They would also find promising candidates while doing a purposeful inventory of code used by others, or believed to be potentially reusable. Experience shows that it is easy to find roughly 10% of code that is already modular enough, and is (re)used a sufficient number of times in the legacy systems to justify a small amount of re-packaging, re-documenting or re-engineering to extract these components and make these into reusable assets. 6
7 Top-down component mining proceeds to find and reengineer candidate assets as a conscious by product of domain analysis while analyzing exemplars. As the candidate domain model and architecture is evolved, a domain dictionary and asset inventory is produced, which provides a guide as to which assets are needed and how much reengineering they will need before they appropriately fit the target asset architecture. Open Source as a Form of Reuse See for more information on the Open Source Initiative. Without going into great detail, it is worth noting that the encouragement and practice of open source techniques can be viewed as a form of Facilitated reuse, and perhaps even as a part of a Managed reuse program. It is also worth noting that a number of organizations have advocated the use of Open Source techniques 5, either through participation in external Open Source efforts, or by setting up some form of Open Source community and repository inside the organization (so called Corporate Source 6 ). The key idea here is large-scale collaborative development and sharing of source code, and is therefore a form of organized reuse. Depending on the strength of the roles of architects and gatekeepers, this operates as a form of Facilitated reuse, with some small flavorings of Managed and Designed reuse. Fundamentally, people are encouraged to participate through strong community building, but there are distinct policies about which people can modify and contribute which kinds of code, and how code should be tested and documented before acceptance for reuse. The key observation is that if a policy of Facilitated reuse has been adopted, the organization should be careful to appropriately align the reuse program and the open source program. Some Experience in Adopting and Combining Reuse Modes Let s say we choose an overall strategy of reuse-driven improvement, but we want to proceed incrementally to avoid organizational shock and over-investment. The key is to view Facilitated reuse and the supporting repository at its core as just the first step towards the Managed and Designed modes. In a hypothetical example, we would first move to establish and then expand the Facilitated mode with a repository and initial policies to encourage participation. At the same time, we could introduce Inspections and some PSP or XP training, refining experience in several pilot projects. Then, in the context of a larger CMM improvement initiative, we could expand the reuse effort to a Managed mode, improve configuration management of assets and products, and at the same time increase the use of Inspections and systematic asset review, and implement increased testing and documentation to improve the quality of recommended and required assets. Finally, we would begin RUP training and adoption as we design more of the assets and define the architecture of the supporting framework. As a real example, consider that in one multi-divisional HP instrument business unit a crucial goal was to significantly decrease time to market, at the same time that the variety of products was increasing. A lightweight, incremental Designed reuse strategy was adopted, followed by an evolving mixture of Facilitated and Managed reuse. First, in less than a year they developed initial core instrument architecture and reengineered supporting components within several projects. These were made available for optional use, and an active program of encouragement saw the launch a number of pilot projects. After demonstrating initial success, the number of components was 7
8 expanded over a period of several years. Use of these components was mandated, and a proactive approach to the architecting and implementation of targeted components and frameworks was adopted. As time-to-market shrank (from over 18 months to as little as 5 months for new development) and reuse of components expanded (with levels ranging from 25% to over 50%) to include more projects, the reuse program expanded to a Managed mode, with an explicit component support group. Summary and Conclusions Reuse can be practiced in a variety of ways, and customized to suit several different business goals, time frames, and investment levels. In choosing and adopting a Facilitated, Managed and/or Designed mode it is most important to understand the potential costs and payoff associated with each mode in order to correctly assess the situation and need with respect to domain, available resources, and organizational readiness, and to move incrementally to make the organization, process and technology changes. References 1. M. Griss Ranking IT Productivity Improvement Strategies, Flashline, Inc. 2. I. Jacobson, M. Griss, P. Jonsson Software Reuse: Architecture, Process, and Organization for Business Success. Addison-Wesley. 3. W. Lim Managing Software Reuse: A Comprehensive Guide to Strategically Reengineering the Organization for Reusable Components, Prentice Hall Professional. 4. V. Basili, G. Caldieri Identifying and Qualifying reusable software components. IEEE Computer. 5. J. Feller, B. Fitzgerald, E. Raymond Understanding Open Source Software Development. Addison-Wesley. See also: and 6. P.j Garg, J. Dinckelacker Applying Open Source Concepts to a Corporate Environment. 1st ICSE International Workshop on Open Source Software Engineering. f1 This 3 mode model is a simplification of the 5 step reuse maturity model stair- diagram in my book2 and similar reuse maturity models discussed in Wayne s book3. The word asset suggests a corporate investment and suggests that more than just code components will be reused. 8
9 Author Profile Martin Griss is highly regarded as one of the leading authorities on software reuse, having spent nearly two decades as Principal Laboratory Scientist at Hewlett-Packard and as Director of HP's Software Technology Laboratory. At HP, Griss was widely known as the company's "Reuse Rabbi" where he helped introduce software reuse into the company's development processes and defined a reuse consultancy. His research has covered software reuse processes and tools, software agents, software factories, component-based software engineering, and software-bus frameworks. Griss has written extensively on software reuse for a number of industry publications, and is co-author of the widely read Software Reuse: Architecture, Process and Organization for Business Success. He is currently an Adjunct Professor of Computer Science at the University of California, Santa Cruz, and at the University of Utah. Mr. Griss earned a B.Sc. from the Technion in Israel in 1967 and a Ph.D. in Physics from the University of Illinois in About the Flashline Software Development Productivity Council Martin Griss is a member of Flashline s Software Development Productivity Council (SDPC), an unprecedented assemblage of knowledge and experience covering the broad spectrum of software development areas including software engineering process and environments that affect today's corporations. The members of the SDPC are individually recognized authors and consultants in a wide range of subjects covering the entire software development lifecycle and its relation to the corporate bottom line. Their expertise guides the evolution of Flashline s products and services. Through direct consultation with Flashline customers, the SDPC aids in the realization of the goal of greater return of software East 9th Street, Suite 1600, Cleveland, OH T: (800) F: (216) Flashline, Inc. All Rights Reserved. Flashline is a registered trademark of Flashline, Inc. in the United States and other countries. Other trademarks are the property of their respective owners. Reproduction of this publication for commercial purposes without prior written permission is forbidden. 9
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material,
SOA Governance and the Service Lifecycle
IBM SOA SOA Governance and the Service Lifecycle Naveen Sachdeva [email protected] IBM Software Group 2007 IBM Corporation IBM SOA Agenda What is SOA Governance? Why SOA Governance? Importance of SOA
Enterprise Architecture: A Governance Framework
Enterprise Architecture: A Governance Framework Part I: Embedding Architecture into the Organization Sohel Aziz, Thomas Obitz, Reva Modi and Santonu Sarkar The whitepapers arei related to two sessions
Basic Trends of Modern Software Development
DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development 2 3 Software Engineering FAQ What is software engineering? An engineering
Extend the value of your core business systems.
Legacy systems renovation to SOA September 2006 Extend the value of your core business systems. Transforming legacy applications into an SOA framework Page 2 Contents 2 Unshackling your core business systems
EMC PERSPECTIVE. Information Management Shared Services Framework
EMC PERSPECTIVE Information Management Shared Services Framework Reader ROI Information management shared services can benefit life sciences businesses by improving decision making by increasing organizational
Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK
IBM Software Group Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK Jean-Louis Maréchaux Software IT Specialist IBM Rational
Open Group SOA Governance. San Diego 2009
Open Group SOA Governance San Diego 2009 SOA Governance Aspects A comprehensive view of SOA Governance includes: People Organizational structures Roles & Responsibilities Processes Governing processes
Realizing business flexibility through integrated SOA policy management.
SOA policy management White paper April 2009 Realizing business flexibility through integrated How integrated management supports business flexibility, consistency and accountability John Falkl, distinguished
Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution
Software Life Cycle Main issues: Discussion of different life cycle models Maintenance or evolution Not this life cycle SE, Software Lifecycle, Hans van Vliet, 2008 2 Introduction software development
A Comparison of SOA Methodologies Analysis & Design Phases
202 A Comparison of SOA Methodologies Analysis & Design Phases Sandra SVANIDZAITĖ Institute of Mathematics and Informatics, Vilnius University Abstract. Service oriented computing is a new software engineering
Five Core Principles of Successful Business Architecture. STA Group, LLC Revised: May 2013
Five Core Principles of Successful Business Architecture STA Group, LLC Revised: May 2013 Executive Summary This whitepaper will provide readers with important principles and insights on business architecture
Asset Based Development
IBM Software Group Asset Based Development Grant Larsen [email protected] November 2003 Agenda Introduction Asset-based Development Process Standards Tooling Assets Getting Started Agenda Introduction
A discussion of information integration solutions November 2005. Deploying a Center of Excellence for data integration.
A discussion of information integration solutions November 2005 Deploying a Center of Excellence for data integration. Page 1 Contents Summary This paper describes: 1 Summary 1 Introduction 2 Mastering
California Enterprise Architecture Framework
Version 2.0 August 01, 2013 This Page is Intentionally Left Blank Version 2.0 ii August 01, 2013 TABLE OF CONTENTS 1 Executive Summary... 1 1.1 What is Enterprise Architecture?... 1 1.2 Why do we need
OMG SOA Workshop - Burlingame Oct 16-19, 2006 Integrating BPM and SOA Using MDA A Case Study
OMG SOA Workshop - Burlingame Oct 16-19, 2006 Integrating BPM and SOA Using MDA A Case Study Michael Guttman CTO, The Voyant Group [email protected] Overview of Voyant H.Q. West Chester, PA Business
Enterprise Content Management (ECM)
Business Assessment: A Quick-Reference Summary Intro to MIKE2 methodology and phase 1 The methodology that will be used throughout the specialist track is based on the MIKE2 methodology. MIKE stands for
Increasing Development Knowledge with EPFC
The Eclipse Process Framework Composer Increasing Development Knowledge with EPFC Are all your developers on the same page? Are they all using the best practices and the same best practices for agile,
Plan-Driven Methodologies
Plan-Driven Methodologies The traditional way to develop software Based on system engineering and quality disciplines (process improvement) Standards developed from DoD & industry to make process fit a
Anatomy of an Enterprise Software Delivery Project
Chapter 2 Anatomy of an Enterprise Software Delivery Project Chapter Summary I present an example of a typical enterprise software delivery project. I examine its key characteristics and analyze specific
CT30A8901 Chapter 10 SOA Delivery Strategies
CT30A8901 Chapter 10 SOA Delivery Strategies Prof. Jari Porras Communications Software Laboratory Contents 10.1 SOA Delivery lifecycle phases 10.2 The top-down strategy 10.3 The bottom-up strategy 10.4
Project, Program & Portfolio Management Help Leading Firms Deliver Value
in collaboration with Project, Program & Portfolio Help Leading Firms Deliver Value Managing Effectively & Efficiently Through an Enterprise PMO Program & Portfolio : Aligning IT Capabilities with Business
TDWI strives to provide course books that are content-rich and that serve as useful reference documents after a class has ended.
Previews of TDWI course books offer an opportunity to see the quality of our material and help you to select the courses that best fit your needs. The previews cannot be printed. TDWI strives to provide
SOA Governance. Stephen G. Bennett, Clive Gee, Robert Laird, Co-authored and edited by Thomas Erl. Governing
SOA Governance Governing Shared Services On-Premise and in the Cloud Co-authored and edited by Thomas Erl Stephen G. Bennett, Clive Gee, Robert Laird, Anne Thomas Manes, Robert Schneider, Leo Shuster,
Business Intelligence
Transforming Information into Business Intelligence Solutions Business Intelligence Client Challenges The ability to make fast, reliable decisions based on accurate and usable information is essential
The following is intended to outline our general product direction. It is intended for informational purposes only, and may not be incorporated into
The following is intended to outline our general product direction. It is intended for informational purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any
5 Five Ways to Fast ROI With Business Rule Management Systems (BRMS)
Cost Reduction Why Business Rules? Why Now? 5 Five Ways to Fast ROI With Business Rule Management Systems (BRMS) Five Ways to Fast ROI With BRMS Business becomes increasingly complex with each passing
Avaya Strategic Communications. Consulting. A Strong Foundation for Superior Business Results. Table of Contents. Taking Business Vision to Reality
Avaya Strategic Communications Consulting Table of Contents Taking Business Vision to Reality... 1 Section 1: The Technology Contribution Challenge..... 1 Section 2: A Systematic Approach for Ensuring
MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.
Exam Name MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. 1) Which of the following requires a systems development method that uses a data orientation
Elite: A New Component-Based Software Development Model
Elite: A New Component-Based Software Development Model Lata Nautiyal Umesh Kumar Tiwari Sushil Chandra Dimri Shivani Bahuguna Assistant Professor- Assistant Professor- Professor- Assistant Professor-
Reaping the rewards of your serviceoriented architecture infrastructure
IBM Global Services September 2008 Reaping the rewards of your serviceoriented architecture infrastructure How real-life organizations are adding up the cost savings and benefits Executive summary Growing
BUSINESS RULES AND GAP ANALYSIS
Leading the Evolution WHITE PAPER BUSINESS RULES AND GAP ANALYSIS Discovery and management of business rules avoids business disruptions WHITE PAPER BUSINESS RULES AND GAP ANALYSIS Business Situation More
Beyond the Data Lake
WHITE PAPER Beyond the Data Lake Managing Big Data for Value Creation In this white paper 1 The Data Lake Fallacy 2 Moving Beyond Data Lakes 3 A Big Data Warehouse Supports Strategy, Value Creation Beyond
Introduction to SOA governance and service lifecycle management.
-oriented architecture White paper March 2009 Introduction to SOA governance and Best practices for development and deployment Bill Brown, executive IT architect, worldwide SOA governance SGMM lead, SOA
Banking Application Modernization and Portfolio Management
Banking Application Modernization and Portfolio Management Key Challenges and Success Factors As part of their long-term strategic plans, banks are seeking to capitalize on their legacy applications. Acquired
Enterprise Data Governance
DATA GOVERNANCE Enterprise Data Governance Strategies and Approaches for Implementing a Multi-Domain Data Governance Model Mark Allen Sr. Consultant, Enterprise Data Governance WellPoint, Inc. 1 Introduction:
Systems Engineering with RUP: Process Adoption in the Aerospace/ Defense Industry
March 2004 Rational Systems Engineering with RUP: Process Adoption in the Aerospace/ Defense Industry Why companies do it, how they do it, and what they get for their effort By Dave Brown, Karla Ducharme,
Industry models for insurance. The IBM Insurance Application Architecture: A blueprint for success
Industry models for insurance The IBM Insurance Application Architecture: A blueprint for success Executive summary An ongoing transfer of financial responsibility to end customers has created a whole
SOA and API Management
SOA and API Management Leveraging Your Investment in Service Orientation Version 1.0 December 2013 John Falkl General Manager, Technology, Strategy & Integration Haddon Hill Group, Inc. Contents Introduction...
WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT
WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT CONTENTS 1. THE NEED FOR DATA GOVERNANCE... 2 2. DATA GOVERNANCE... 2 2.1. Definition... 2 2.2. Responsibilities... 3 3. ACTIVITIES... 6 4. THE
PROJECT MANAGEMENT ROADMAP, 2013-2014. Executive Summary
Review by the Office of Program Evaluation and Government Accountability (OPEGA) Response from the Office of Information Technology (OIT) March 1, 2013 PROJECT MANAGEMENT ROADMAP, 2013-2014 Executive Summary
Technical Management Strategic Capabilities Statement. Business Solutions for the Future
Technical Management Strategic Capabilities Statement Business Solutions for the Future When your business survival is at stake, you can t afford chances. So Don t. Think partnership think MTT Associates.
Qlik UKI Consulting Services Catalogue
Qlik UKI Consulting Services Catalogue The key to a successful Qlik project lies in the right people, the right skills, and the right activities in the right order www.qlik.co.uk Table of Contents Introduction
Five best practices for deploying a successful service-oriented architecture
IBM Global Services April 2008 Five best practices for deploying a successful service-oriented architecture Leveraging lessons learned from the IBM Academy of Technology Executive Summary Today s innovative
Component Based Development in Software Engineering
Component Based Development in Software Engineering Amandeep Bakshi, Rupinder Singh Abstract--In today s world, Component Based development is an active research area for more than a decade in software
SOMA, RUP and RMC: the right combination for Service Oriented Architecture
SOMA, RUP and RMC: the right combination for Service Oriented Architecture WebSphere User Group, Bedfont, 4th March, 2008 Keith Mantell Senior Solution Architect IBM Rational [email protected] March
Trends in Embedded Software Development in Europe. Dr. Dirk Muthig [email protected]
Trends in Embedded Software Development in Europe Dr. Dirk Muthig [email protected] Problems A software project exceeds the budget by 90% and the project time by 120% in average Project Management
Knowledge Infrastructure for Project Management 1
Knowledge Infrastructure for Project Management 1 Pankaj Jalote Department of Computer Science and Engineering Indian Institute of Technology Kanpur Kanpur, India 208016 [email protected] Abstract In any
TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW
Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of
Achieving Business Analysis Excellence
RG Perspective Achieving Business Analysis Excellence Turning Business Analysts into Key Contributors by Building a Center of Excellence Susan Martin March 5, 2013 11 Canal Center Plaza Alexandria, VA
Laboratório de Desenvolvimento de Software
Laboratório de Desenvolvimento de Software FEUP/MIEIC, 2015/16 Ademar Aguiar Nuno Flores Rui Maranhão Hugo Ferreira Luís Teixeira url: moodle http://www.facebook.com/notes/facebook-engineering/visualizing-friendships/469716398919
Enterprise Business Service Management
Technical white paper Enterprise Business Service Management Key steps and components of a successful solution Table of contents Executive Summary... 2 Setting the goal establishing an IT initiative...
SOA: The missing link between Enterprise Architecture and Solution Architecture
SOA: The missing link between Enterprise Architecture and Solution Architecture Jaidip Banerjee and Sohel Aziz Enterprise Architecture (EA) is increasingly being acknowledged as the way to maximize existing
Business Analysis Standardization & Maturity
Business Analysis Standardization & Maturity Contact Us: 210.399.4240 [email protected] Copyright 2014 Enfocus Solutions Inc. Enfocus Requirements Suite is a trademark of Enfocus Solutions Inc.
A Capability Maturity Model (CMM)
Software Development Life Cycle (SDLC) and Development Methods There are some enterprises in which a careful disorderliness is the true method. Herman Melville Capability Maturity Model (CMM) A Capability
The Worksoft Suite. Automated Business Process Discovery & Validation ENSURING THE SUCCESS OF DIGITAL BUSINESS. Worksoft Differentiators
Automated Business Process Discovery & Validation The Worksoft Suite Worksoft Differentiators The industry s only platform for automated business process discovery & validation A track record of success,
Barely Sufficient Software Engineering: 10 Practices to Improve Your Research CSE Software
Barely Sufficient Software Engineering: 10 Practices to Improve Your Research CSE Software Special Thanks: LDRD NNSA ASC SAND#: 2009-0579 C Michael A. Heroux James M. Willenbring Sandia National Laboratories
Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2).
0305203 0305280 0305301 0305302 Software Engineering/Courses Description Introduction to Software Engineering Prerequisite: 0306211(Computer Programming 2). This course introduces students to the problems
Information Management & Data Governance
Data governance is a means to define the policies, standards, and data management services to be employed by the organization. Information Management & Data Governance OVERVIEW A thorough Data Governance
Choosing and Working with a Magento Solution Partner
Choosing and Working with a Magento Solution Partner www.magento.com You ve invested in a Magento ecommerce solution because you know that having a great online store can strengthen your brand, build your
www.firstderivatives.com First Derivatives Data Management Consulting Overview
www.firstderivatives.com First Derivatives Data Management Consulting Overview Contents Contents Company Overview & Differentiators Data Management Consulting Why FD Data Management Consulting? Experience,
Using SOA to Improve Operational Efficiency A Management Overview. Introducing MIKE2.0 An Open Source Methodology for Information Development
Using SOA to Improve Operational Efficiency A Management Overview Introducing MIKE2.0 An Open Source Methodology for Information Development http://www.openmethodology.org org Agenda Service-Oriented Architecture
ISSA Guidelines on Master Data Management in Social Security
ISSA GUIDELINES ON INFORMATION AND COMMUNICATION TECHNOLOGY ISSA Guidelines on Master Data Management in Social Security Dr af t ve rsi on v1 Draft version v1 The ISSA Guidelines for Social Security Administration
Achieve Economic Synergies by Managing Your Human Capital In The Cloud
Achieve Economic Synergies by Managing Your Human Capital In The Cloud By Orblogic, March 12, 2014 KEY POINTS TO CONSIDER C LOUD S OLUTIONS A RE P RACTICAL AND E ASY TO I MPLEMENT Time to market and rapid
ENTERPRISE ARCHITECTUE OFFICE
ENTERPRISE ARCHITECTUE OFFICE Date: 12/8/2010 Enterprise Architecture Guiding Principles 1 Global Architecture Principles 1.1 GA1: Statewide Focus 1.1.1 Principle Architecture decisions will be made based
Introduction to Agile Software Development
Introduction to Agile Software Development Word Association Write down the first word or phrase that pops in your head when you hear: Extreme Programming (XP) Team (or Personal) Software Process (TSP/PSP)
Basic Unified Process: A Process for Small and Agile Projects
Basic Unified Process: A Process for Small and Agile Projects Ricardo Balduino - Rational Unified Process Content Developer, IBM Introduction Small projects have different process needs than larger projects.
Global Delivery Excellence Best Practices for Improving Software Process and Tools Adoption. Sunil Shah Technical Lead IBM Rational
Global Delivery Excellence Best Practices for Improving Software Process and Tools Adoption Sunil Shah Technical Lead IBM Rational Agenda Organization s Challenges from a Delivery Perspective Introduction
MANAGING USER DATA IN A DIGITAL WORLD
MANAGING USER DATA IN A DIGITAL WORLD AIRLINE INDUSTRY CHALLENGES AND SOLUTIONS WHITE PAPER OVERVIEW AND DRIVERS In today's digital economy, enterprises are exploring ways to differentiate themselves from
Senior Business Intelligence/Engineering Analyst
We are very interested in urgently hiring 3-4 current or recently graduated Computer Science graduate and/or undergraduate students and/or double majors. NetworkofOne is an online video content fund. We
How Technology Supports Project, Program and Portfolio Management
WHITE PAPER: HOW TECHNOLOGY SUPPORTS PROJECT, PROGRAM AND PORTFOLIO MANAGEMENT SERIES 4 OF 4 How Technology Supports Project, Program and Portfolio Management SEPTEMBER 2007 Enrico Boverino CA CLARITY
Organizing for the Cloud
Organizing for the Cloud Your business is ready to reap the rewards of the softwaredefined cloud era. Is your IT organization ready to deliver? By Kevin Lees, Principal Architect, VMware Global Operations
Practical Experiences of Agility in the Telecom Industry
Practical Experiences of Agility in the Telecom Industry Jari Vanhanen 1, Jouni Jartti 2, and Tuomo Kähkönen 2 1 Helsinki University of Technology, Software Business and Engineering Institute, P.O. Box
Value to the Mission. FEA Practice Guidance. Federal Enterprise Architecture Program Management Office, OMB
Value to the Mission FEA Practice Guidance Federal Enterprise Program Management Office, OMB November 2007 FEA Practice Guidance Table of Contents Section 1: Overview...1-1 About the FEA Practice Guidance...
Answers to Top BRMS Questions
November 2009 Answers to Top BRMS Questions Answers to ten frequently asked questions about what business rule management systems are and how they are used Brett Stineman Product Marketing, Business Rules
Software Development Process
Software Development Process A software development process, also known as software development lifecycle, is a structure imposed on the development of a software product. Similar terms include software
3 rd GENERATION KNOWLEDGE MANAGEMENT and Beyond!
KNOWLEDGE MANAGEMENT TALKS: 3 rd GENERATION KNOWLEDGE MANAGEMENT and Beyond! Even given its short life span, Knowledge Management has clearly evolved through three distinct eras, and is already entering
Knowledge Base Data Warehouse Methodology
Knowledge Base Data Warehouse Methodology Knowledge Base's data warehousing services can help the client with all phases of understanding, designing, implementing, and maintaining a data warehouse. This
Introduction to Business Intelligence
IBM Software Group Introduction to Business Intelligence Vince Leat ASEAN SW Group 2007 IBM Corporation Discussion IBM Software Group What is Business Intelligence BI Vision Evolution Business Intelligence
Building a PLM concept
Building a PLM concept Introduction Today we hear many companies say - Product Lifecycle Management (PLM) is an important part of their business strategy or PLM has a big role in their corporate strategy.
Federal Enterprise Architecture and Service-Oriented Architecture
Federal Enterprise Architecture and Service-Oriented Architecture Concepts and Synergies Melvin Greer Chief Strategist, SOA / Cloud Computing Certified Enterprise Architect Copyright August 19, 2010 2010
A DESIGN SCIENCE APPROACH TO DEVELOP A NEW COMPREHENSIVE SOA GOVERNANCE FRAMEWORK
A DESIGN SCIENCE APPROACH TO DEVELOP A NEW COMPREHENSIVE SOA GOVERNANCE FRAMEWORK Fazilat Hojaji 1 and Mohammad Reza Ayatollahzadeh Shirazi 2 1 Amirkabir University of Technology, Computer Engineering
A Practical Roadmap to SOA Governance. 2011 Enterprise Integration Services
A Practical Roadmap to SOA Governance 2011 A Practical Roadmap to SOA Governance Corporate Overview Staples is the world s largest office products company and a trusted source for office solutions. Provides
Fidelity National Financial Drives Improvements in Software Development and Reuse with IBM Rational Software Development Platform and Flashline
IBM Customer Success Fidelity National Financial Drives Improvements in Software Development and Reuse with IBM Rational Software Development Platform and Flashline Overview The Challenge Following a series
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC) Supriyo Bhattacharjee MOF Capability Maturity Model (CMM) A bench-mark for measuring the maturity of an organization s software process CMM defines 5 levels of process
An RCG White Paper The Data Governance Maturity Model
The Dataa Governance Maturity Model This document is the copyrighted and intellectual property of RCG Global Services (RCG). All rights of use and reproduction are reserved by RCG and any use in full requires
An Executive Primer To Customer Success Management
A Forrester Consulting Thought Leadership Paper Commissioned By Gainsight April 2014 An Executive Primer To Customer Success Management Table Of Contents We Live In A Subscription Economy Learn To Manage
Enabling Data Quality
Enabling Data Quality Establishing Master Data Management (MDM) using Business Architecture supported by Information Architecture & Application Architecture (SOA) to enable Data Quality. 1 Background &
Agile Projects 7. Agile Project Management 21
Contents Contents 1 2 3 Agile Projects 7 Introduction 8 About the Book 9 The Problems 10 The Agile Manifesto 12 Agile Approach 14 The Benefits 16 Project Components 18 Summary 20 Agile Project Management
Striking the balance between risk and reward
Experience the commitment Striking the balance between risk and reward in payments modernization Staying competitive in financial services requires meeting everincreasing customer expectations for digital
Modernizing enterprise application development with integrated change, build and release management.
Change and release management in cross-platform application modernization White paper December 2007 Modernizing enterprise application development with integrated change, build and release management.
