Using ABC Model for Software Process Improvement: A Balanced ...

1 downloads 358 Views 201KB Size Report
efficiently improve software development process (SDP). This paper provides a ... budget planning and to correspond to the financial part of BSC. 2. Literature ...
Proceedings of the 39th Hawaii International Conference on System Sciences - 2006

Using ABC Model for Software Process Improvement: A Balanced Perspective Han-Wen Tuan1, Chia-Yi Liu1,2, Chiou-Mei Chen1,3 1

Department of Information Management, National Sun Yat-Sen University, Kaohsiuang, Taiwan Department of Information Management and Communication, Wenzao Ursuline College of Language, Kaohsiuang, Taiwan 3 Department of Information Management, Tajen Unversity, Pingtung, Taiwan 1 [email protected], 2 [email protected], 3 [email protected]

2

Abstract Recently, many related researches focus on using mathematical approaches or artificial techniques to efficiently improve software development process (SDP). This paper provides a managerial viewpoint to discuss software process improvement (SPI) and introduces an alternative orientation that can lead to asking new questions. We combine activity-based costing (ABC), balanced scorecard (BSC) and capability maturity model (CMM) into SPI and propose a new model, called the ABC Model, also called the ABCM. There are two purposes of the proposed model. The first is to reshape the effective SDP in terms of goals and strategies of organizations. The second is to evaluate the performance of SDP based on the balanced perspective. This paper has two perspectives introduced, a balanced perspective on SDP, and a process-based perspective on the ABCM. Finally, this research is a longitudinal and practical research and employs a case study to propose a feasible model for SPI. Keywords: Activity-based costing (ABC), Balanced scoreboard (BSC), Software capability maturity model (CMM), Software development process (SDP), Software process improvement (SPI)

understanding of cost structure [14]. The BSC as a strategic management system focuses on the balanced development by evaluating financial and non-financial performance for enterprises [13]. The CMM is to understand and analyze the status of software development process (SDP), and to construct and execute the process improvement based on the analysis results [9]. Therefore, this paper considers the trade-off of tight cost and quality constraints, employs BSC to implement business vision from strategy to action, utilizes ABC to understand the cost structure of SDP, and applies CMM to evaluate software development performance. In one word, investigate the possibilities of the proposed model in providing useful information for software engineers and managers to adapt appropriate SDP. Hence, there are two reasons to adapt the ABCM, the first is to emphasize high-quality software through effective process improvement rather than software development cost estimation. Secondly, we are a governmental sector without financial indicators like market sharing. Therefore, applies ABC to understand the execution of budget planning and to correspond to the financial part of BSC. .

2. Literature review

1. Introduction Modern software organizations need to face up to a dynamic and competition-intensive market under tight time and cost constraints to seek ways to develop highquality software quickly and productively [6]. Hence, on the one hand organizations have started to undertake software process improvement (SPI) initiatives that aimed at increasing the maturity and quality of software process, and on the other researchers paid their attention and emphasized on the problems of defining the process for the quality of products and improvement [1]. In one word, software development or maintenance is a knowledge-intensive and mind-collective activity. This paper proposes a new model that combines activity-based costing (ABC), balanced scorecard (BSC), and capability maturity model (CMM) for software development, especially in applying to how to improve software process based on a balanced perspective. The proposed model is called the ABCM. The ABC has helped many firms to improve their competitiveness by enabling them to make better decisions based on better

This section begins with a brief overview of relevant literature about ABC, the BSC, and CMM respectively.

2.1 The Activity-Based Costing (ABC) Applying the traditional costing accounting methods for a wide range of products would lead to distorted cost information. It is very important for companies to gain accurate cost information, such as production cost and valued-added activities. The ABC aims not only to allocate overhead costs accurately, but also identifies the activities of the consumption of resources. This lends ABC the cost of products in terms of activities performed on them, giving more accurate cost information, with less distortion [7]. Wouters (1994) addressed the question of the relevance of ABC to short-term decision making. In order to make a decision, only those costs that are controllable should be considered. This is the domain of the use of ABC for activity control [24]. Hence, the implementation issues of ABC was proposed and discussed in manufacturing. An application of ABC

0-7695-2507-5/06/$20.00 (C) 2006 IEEE

1

Proceedings of the 39th Hawaii International Conference on System Sciences - 2006

leads to classifying value-added and non-value-added activities to provide ways to eliminate the non-valueadded activities. In other words, the focus of ABC is on accurate information about the cost of products, services, process, activities, contracts and projects [4]. The ABC is a two-stage approach for allocating indirect costs to product units based cost drivers at various levels of activity. Hence, outlined a generic ABC for projects. As a project was proceeded, there existed many activities for project, such as customer relations, procurement, change control, personnel management…etc. For example, the cost driver of personnel management includes direct labor, number of team member, and hours of actual usage [22]. Therefore, corporate performance is improved by optimizing the system of processes, instead of separate activities. Meantime the ABC exist some shortcomings, such as no detailed information about activities at hand, the complex system, the lack of activity interrelationships. Similarly, the use of process-based costing for continuous improvement could give new and value information [23].

2.2 The Balanced Scorecard (BSC) Kaplan and Norton (1992) proposed the balanced scorecard (BSC), which asked you to think of your organizational mission and strategy from four key perspectives. The customer perspective is a typical corporate mission that requires specific measures of what customers get in terms of time, quality, service, performance, and cost. The internal business perspective emphasizes the firms’ core competencies, process, decisions and action. On the innovation and leaning perspective, related measures indicate future success, improve existing products and process, and introduce new products with expanded capabilities. On the financial perspective, financial measures are essential for enterprises to survive which based on financial foundation [10]. Using the BSC as a strategic management system emphasized a balanced development for organizations. The BSC is an integrated set of performance measures comprising both current performance indicators and drivers of future performance, and financial as well as non-financial measures. Therefore, the BSC provides a holistic view to corporate development for managers of organizations. The key characteristic of BSC is to identify the handful of measures that are most critical to your organizations through balanced perspective [12]. Contemporarily, linking measurement to strategy is the heart of a successful scoreboard development process [11]. The BSC is setting ambitious long-term targets companied by a comprehensive list of initiatives for each measure, which have proven to be the key

drivers to better overall performance. Meanwhile, the BSC will be affected by national culture in terms of the approach of financial performance, by occupational culture on traditions, and by organizational culture [19]. Hence, a large software development company presented their experience of implementing a specific BSC in Greece. They illustrated and evaluated the main obstacles and shortcomings of BSC project. Obviously, BSC implementation brought more benefit for the firm by better performance management. On the contrary, the subjectivity associated with the linkages of the strategy map led to time-consuming arguments about the actual correlation of the chosen strategic objectives [20].

2.3 The Capability Maturity Model (CMM) In 1987, the U.S. Department of Defense (DoD) tasked the Software Engineering Institute (SEI) to develop a means to evaluate the maturity of an organization’s software development process. The SEI developed a five-level model, known as the Software CMM, which serves as a guide to improving the organization’s SDP. Therefore, the CMM has become very influential as a basis for SPI [9]. The CMM is a five-level model describing an evolutionary path from chaotic SDP to mature, disciplined SDP. Five levels of process maturity include the initial level, the repeatable level, the defined level, the managed level, and the optimizing level. Each level has a number of key process area (KPAs) that represent the primary issues the organization needs to address in order to mature its process [21]. Each KPA is described by identifying the following characteristics: z Goals: overall objectives that KPA must achieve. z Commitments: requirements that provide proof of intent to comply with the goals. z Abilities: those things that be in place that will enable the organization to meet the commitments. z Activities: tasks that achieve the KPA function. z methods: the manners Humphrey et. al. (1991) applied the CMM to SPI at Hughes aircrafts. They proposed six steps for process assessment procedures: 1. Understand the status of their process. 2. Develop a vision of the desired process. 3. Establish a list of required processimprovement actions. 4. Produce a plan to achieve these actions. 5. Commit the resources and execute the plan. 6. Start over at step 1 [8]. Fitzgerald and O’Kane (1999) also provided critical success factors (CSF) in terms of CMM for SPI and showed how Motorola’s Cellular Infrastructure Group progressed to the CMM level 4. This paper organized the related

2

Proceedings of the 39th Hawaii International Conference on System Sciences - 2006

CSFs described on the following table (See Table 1) [3]. Table 1: CSFs at Motorola for CMM level [3] CMM Level CSFs at Motorola Repeatable

Defined

Optimized

Long-term

Managed

CSF1: Dedicated project planning and tracking roles CSF2: Formalized procedures for managing subcontractors CSF3: Institutionalized software quality assurance program CSF4: Software configuration management automated CSF1: Comprehensive process definition and techniques CSF2: Strong and pervasive culture on SPI CSF3: Good training program CSF4: Strong cooperation CSF5: Peer review of all software products CSF1: Data-driven culture for management of products, projects. CSF1: Technology change program CSF2: Organizational process improvement culture CSF3: Defect prevention program

identify activities of primary processes of the tactical program, and to understand the cost structure of developing tactical programs. Finally, this paper provides an executable framework from articulating a vision to taking an action for SPI. In other words, make use of the layer concept to unfold the relationship of between ABC, BSC, CMM, and strategy of organization development. Consequently, put a vision into mission that is represented by strategies and goals that is translated into objectives and plans for taking actions.

Strategic level

Mission

Goals Performance Measures

Strategies Capability Maturity Model

Objectives

Short-term

In order to construct the ABCM, we propose the conceptual diagram that depicts the holistic picture of the ABCM and describes the relationships of between ABC, BSC, CMM, and strategy of organization development (See Figure 1). Briefly, we employ a three-tier planning hierarchy to embrace the ABCM. Firstly, this paper turns to the well-known mission, objectives, and strategy (MOS) approach and expands it to strategic planning for organization development. Secondly, we integrate the expanded MOS approach with the ABCM to characterize the conceptual diagram. The purpose is to understand the role and the position of the ABCM on the organization development [16], [17]. At strategic level, the purpose of employing the BSC model is to do the right thing and to construct an organizational vision. Therefore, organizations must articulate a vision firstly. Then according to the established vision, build up different missions at different period to achieve. At managerial level, the purpose of utilizing the CMM model guided and unfolded by our goals, strategy, objectives, and plans on the SDP of the tactical program, especially on SPI. Hence, enterprises must develop long-term goals in accordance with missions and formulate different strategies corresponding to different goals at that period. Lastly, based on goals and strategies, deploy the shortterm objectives and plans. At operational level, the purpose of addressing the ABC is to do the thing right, to

Vision

Managerial level

3. The ABC model (ABCM) construction 3.1 Conceptual diagram

Balanced Scorecard

Plans

Operational level Activity-based costing

What we want

Execution

How to do

The direction of arrows means guidance

ʳ ʳ

Figure 1: the conceptual diagram of the ABCM

3.2 Strategic level In this paper, the BSC is chiefly adopted to be a strategic tool at the strategic level. We choose the framework of managing strategy (See Figure 2), proposed by Kaplan and Norton (1996) [12]. There are two purposes of the BSC. The first is to deliberate a balanced perspective that includes finance, process, learning & growth, and customer for organizations on software development. The second is to develop a right direction for organizations via the BSC implementation. The strategic level describes the managerial strategy with four processes counterclockwise. The first process, translating the vision, is to help managers to clarify the vision and to build consensus about vision and strategy of organizations. The second process, communicating and linking, is to let managers communicate their strategy and link it to departmental and individual objectives. The third process, business planning, enables organizations to combine their business and financial plans. The last process, feed and learning, provides organizations the capacity for strategic learning.

3

Proceedings of the 39th Hawaii International Conference on System Sciences - 2006

Translating the Vision

˚̂˴˿̆

Clarifying the vision Gaining consensus

˦̇̅˴̇˸˺˼˸̆ ˖ˠˠ

Feedback and learning

Communicating & Linking

Vision Strategy

Communicating and educating Setting goals Linking reward to performance

Articulating the shared vision Supply strategic feedback Facilitating strategy review

Goals

Targets

Objectives

Measures / Indicators

Methods (Solutions)

Capability & competence of personnel

Business planning Setting targets Aligning strategic initiatives

ˢ˵˽˸˶̇˼̉˸̆

Figure 2: Managing Strategy: four processes [12]

3.3 Managerial level This paper adopts the framework of linking long-term strategic goals with short-term actions at the managerial level, proposed by Kaplan and Norton (1996) [12]. In one word, the second level describes how to translating vision and strategy into action. Four perspectives include finance, process, learning & growth, and customer for organizations. For each perspective, four items include objectives, measures, targets, and initiatives. At this level, we mainly apply CMM to substitute for the internal business process and learning & growth of the BSC. The CMM includes goals and common feature of the key practices for each key process area (KPA). In this paper, revises the original BSC and integrates these items into an implementing framework depicted as the following diagram (See Figure 3). ABC-based Financial Perspective Objectives Measures

Targets

methods

Customer Objectives Measures

CMM -based Internal Process Perspective Targets

methods

Objectives Measures

Vision Strategy

Targets

methods

Figure 4: Implementing framework for managerial level As for customer and financial perspective, the former emphasizes customer satisfaction. The latter will be corresponded to ABC and be discussed on the next section.

3.4 Operational level At the operational level, adopts the framework of implementation of ABC (See Figure 5), proposed by Gunasekaran (1998) [4]. At this level, characterizes the processes describing how to implement ABC. We depict the implementing framework that has four processes. The first process is to identify the products that are the chosen cost objects. The second process is to analyze the activities and to identify the direct and indirect cost of products. The third process is to select the costallocation bases to use for allocating indirect costs to the product, to identify indirect costs, and to compute the indirect costs. Lastly, monitor the implementation. There are two purposes of this paper to make use of the ABC. The first is to represent the financial perspective of the BSC. The second is to understand the cost structure of SDP for making policy of software development. Analyze the activities

CMM-based Learning & growth Objectives Measures

Targets

ˣ˿˴́̆

methods

ʳ

Identify the cost objects

Activity-based Costing

Identify cost allocation methods

Figure 3: the revised BSC model [12] Based on the conceptual diagram of ABCM, there are two levels for analysis. One is organizational level that contents are generated from the revised BSC. The other is operational level created by the CMM. This implementing framework exist two purposes (See Figure 4). Firstly, investigates and evaluates goals of CMM in terms of goals, objectives and strategy of organizational level. Meantime we expand goals to clear objectives for implementation. The second is to provide the process-based foundation for ABC’s reference to identify primary related processes.

Monitor the implementation

Figure 5: Implementation of ABC [4]

4. Guidance for Using the ABC Model In order to implement the ABCM, this paper provides guidance for using the ABCM. In one word, we recommend three kinds of implementing approaches to deal with strategic alignment from practical working experience. When we introduced the ABCM into the organizations, drew out a problem that which approach

4

Proceedings of the 39th Hawaii International Conference on System Sciences - 2006

was considered firstly. This paper will combine two approaches to implement the ABCM.

4.1 The top-down approach The top-down approach begins with the firm’s vision, goals, and strategy. In addition, based on four perspectives of BSC, employs the Delphi method, the focus group interview, or critical success factors (CSF) to investigate metrics of the ABCM and to deploy. The implementing stages are described as following. Stage 1: Establishes an organizational vision and goals, common consensus, commitment, and communication plan for organizations (See Figure 2). Unfolds objectives, measures, targets in terms of the revised BSC model for each perspective (See Figure 3). Stage 2: Identifies the critical SDP, defines the scope, activities, tasks, limitations for each process (See Figure 4). Lastly, models new process rudimentarily. Stage 3: Investigates, defines, and identifies the benefit of the new SDP (See Figure 5). Stage 4: Implements the new SDP, understands the cost structure of new SDP. Finally, provides the basis of continues process improvement on SDP.

4.2 The bottom-up approach The bottom-up approach utilities information technologies (IT) to establish firstly information base through data warehouse from the database of software configuration management (SCM). Secondly, build up knowledge base via data mining techniques. Thirdly, find out metrics of the revised BSC model. What you measure is what you get. Hence, we set up the database, information base, and knowledge base for creating and understanding what we can get measures. By this way, the emerging question is how we can get measures. This paper apply configuration database to collect measures, such as access times of programs or subroutines corresponding to indirect cost before code baseline. This paper depicted the relationship between perspectives of the revised BSC model and information technology (See Figure 6) as the following diagram.

4.3 The top-down, bottom-up approach This combination of the two approaches has merit because it overcomes deficiencies in both. Note that the top-down and bottom-up approaches are fundamentally different in philosophy, in how they are operationalized,

and in terms of the results or rules. Hence, mainly based on the top-down approach, refers to information of the bottom-up approach to improve SDP. Perspectives Objectives metrics indicators Solutions

The perspective includes customer, internal process, innovation & learning, and finance. Each perspective has different objectives, metrics, indicators, and solutions.

Knowledge Base data mining

Information Base data warehouse Configuration DataBase

Figure 6: the relationship of the revised BSC and IT

5. Case study 5.1 Background context In 1994, Taiwan government bought military aircrafts for detection from American. The aircraft consists of many hardware systems and software systems and is ability to detect and track targets over land and over water at long range. Until that time, four countries have been operating successfully. At that time, we set up the working board that included a technical working group responsible for acquiring related technologies, such as tactical program. In 2002, Taiwan government also bought the same kind of aircrafts with the newest version systems that can detect targets in excess of 300 miles and has new radar which has a 40% extension in detection range over the old version. Although aircrafts have the new system with different know-how, it also has impact on our SDP a little bit. We will discuss this part a little bit in this paper. Hence, we have begun to investigate a SPI effort over time, to progress to CMM level 4 partially by selfevaluation, and to optimize its SDP until now.

5.2 Implementation Based on the conceptual diagram of the ABCM, firstly outlines the content of the expanded MOS of organization development, which include the vision, missions, goals, strategies, objectives, and plans (See Table 2). This paper chiefly discusses SPI. Hence, the following paragraphs will emphasize SPI from articulating version (CV3) to making a plan (EF32) of taking an action.

5

Proceedings of the 39th Hawaii International Conference on System Sciences - 2006

Table 2: articulating the content of organization development Level

item

Description

Strategic Level

Vision

Core value (CV) z Vision 1 (CV1): Cultivating distinguished software engineers z Vision 2 (CV2): Fostering qualified experts on intelligence analysis z Vision 3 (CV3): Pursuit of the high-quality tactical program

Core purpose Establishing a professional unit with profound expertise and core competence for software development and intelligence analysis

Envisioned future (EF)

Mission

Managerial Goals Level

Strategies

Objectives

Plans

z CV1: Strengthening know-how of tactical programs (EF11) z CV1: Promoting competence of personnel on mission-critical software development (EF12) z CV2: Qualifying the capability of personnel for intelligence analysis (EF21) z CV2: Utilizing information technology to improve intelligence analysis (EF22) z CV2: Implementing intelligence files for decision maker (EF23) z CV3: Enhancing functions and performance of tactical programs (software function) (EF31) z CV3: Improving the SDP of the tactical program (software attribute) (EF32) z CV1: Cultivating distinguished software engineers z CV2: Fostering qualified experts on intelligence analysis z CV3: Developing the tactical program CV1: z EF11: Consolidating know-how and knowledge of tactical programs z EF12: Increasing capability and core competence of software engineering CV3: z EF31: Software function: update, upgrade, and integration z EF32: Software attribute: low cost, high-quality, and on schedule CV1: z EF11: On job training (OJT), job rotation, and performance evaluation z EF12: Further education (such as pursuing PHD program) CV3: z EF31: R&D of ourselves, cooperation, outsourcing, and commercial off-the-shelf (COTS) z EF32: Enhancing software project management, improving SDP, and technical cooperation For example: the 1st year CV1: OJT for new personnel and job rotation for instructors CV3: z EF31: Update of tactical programs z EF32: Assessment of the SDP of the tactical program based on the CMM For example: the 1st year CV1: Draw up related plans for OJT, job rotation, and evaluation CV3: z EF31: R&D of ourselves for update of tactical programs z EF32: developing a plan for assessing the SDP of the tactical program

Strategic level At the strategic level, clarifying out vision was to pursuit of the high-quality tactical program (CV3). In order to fulfill this vision, firstly we began to educate, such as related training, and to communicate with personnel why we need to do. Secondly, set goals and linked reward to performance. Thirdly, expanded goals to objectives and set targets, such as internal users (software engineers) or external users (combat officers or pilots). Lastly, articulated the shared vision and made a feedback mechanism via self-criticism. Managerial level At this level, shows us an example about SCM and employs the revised BCS to implement SPI. First, in accordance with established goals and strategies (EF32)

of organizational level, generated goals of software maintenance policy which fell into four categoriet;! corrective, adaptive, perfective, and preventive. Second, in terms of implementing framework for managerial level, set up objectives, such as (1) improving SDP for timeliness, clearness, and effectiveness, (2) simplifying the numbering of software version, documents that are easier to identify, (3) enhancing the traceability for requirements, documents…etc; (4) coordinating the administrative processes and regulations with SDP. Finally, make a plan to assess SDP and to collect some information about cost structure.

6

Proceedings of the 39th Hawaii International Conference on System Sciences - 2006

Operational level At this level, the first process is to identify the products, such as software functions or SPI of tactical programs. The second process is to analyze the activities and to identify the direct and indirect cost of products. The former included hardware, software, administrative costs. The latter included informal communication of internal baseline, weather of testing environment, coordination of using memory, support of training, communication of common consensus, coordination with administrative process…etc (See Table 3). The third process is to select the costallocation bases to use for allocating indirect costs to the product. Lastly, monitor the implementation. Table 3: Cost structure of SDP of the tactical program cost product Software functions

Software process improvement

Direct cost

Indirect cost

hardware software personnel administrative personnel

communication weather coordination communication coordination support

5.3 Consequences In terms of different period and at different levels, unfolds relevant activities, such as mission, goals, objectives, strategy, and plans. For example, the first year and the second year have the same mission, but they have different goals and objectives. All goals, objectives, strategy, and plans are measured by CMM. The first year: the initial stage Target Mainly focused on external users Mission Updated the software functions to meet our combat environment and assessed the SDP simultaneously. Goal Translated the SDP of the tactical program from the USA, which was assessed and evaluated to fit the current administrative process (See Figure 7). Software plans, products, and activities were kept consistent with the requirement. Objective Drafted the related documentation for SDP, verified the SDP and met the internal user requirement. The prime contractor kept ongoing communications. Strategy Developed tactical program and cooperated with technical representatives of the USA. Planned KPAs, such as software quality assurance, training program, software project tracking, SCM, and peer review. Plan Performed an assessment to understand the current SDP.

Do

Check Act

Established and drafted the first version of SCM manual, training program manual, and relevant manuals. Monitored the progress on the job training. Planned and improved the established SDP for the next year.

Requirement Definition

Analysis

Requirement Discussion

Design

Software Testing

Training

Acceptance Testing

Delivery

Figure 7: The SDP of the tactical program (Version 1) The second year: the experimental stage Target External users and internal users. Mission Upgraded software functions and verified new version software. Goal Satisfied internal users and to renew the SDP that was appropriate to administrative process (See Figure 8). Software estimates were documented for planning and tracking. Change to identified software work products is controlled. Objective Re-captured and analyzed the internal user requirement. Results and performances were tracked against the software plan. A standard SDP for the organization was developed and maintained. Strategy Developed tactical program and cooperated with technical representatives of the USA. Requirements management was planned. Plan Planned to enhance the tactical program, to verify the SDP, and to be based on the integration of DOD-STD-2167A. Do Developed tactical programs and revised relevant manual. Check Monitored the software development and assessed the established SDP. Act Improved the established SDP for the next year. Requirement Definition

Requirement Review

Planning

Analysis, Design, Coding

Software Testing

Software Delivery

Figure 8: The SDP of the tactical program (Version 2) The third year: the repeatable stage Target Internal users and external users Mission Same with the 2nd year, different functions.

7

Proceedings of the 39th Hawaii International Conference on System Sciences - 2006

Goal

Made the process effective and renewed the SDP (See Figure 9). Software project activities and commitments were planned and documented. The project was planned and managed according to the project’s defined software process. Objective Captured and analyzed the external user requirements for combat and coordinated operations and regulations in administrative processes. Corrective actions were taken and managed to closure. Strategy Developed tactical program of ourselves. The intergroup coordination was planned. Plan kept enhancing tactical programs, verifying the SDP, modifying SCM, and being based on the integration of MIL-STD-498. Do Developed tactical programs and assessed the SDP. Check Monitored the software development, the established SDP, SQM, and SCM. Act Improved the established SDP, and return to the plan stage. Sys. Req. Definition

Requirement Definition

Requirement Review & Planing

Soft. Req. Analysis

Preliminary Analysis

Detail Analysis

Software Design

Preliminary Design

Detail Design

Coding

Coding

Unit Testing

Testing

Integration Testing

Software Delivery

Software Installation

System Testing I & II

Acceptance Testing I & II

Training

Figure 9: The SDP of the tactical program (Version 3) The fourth year: the stable stage Target Internal users and external users Mission Same with the 3rd year. Goal Made the process more stable and renewed the SDP. The customer requirements were agreed to by all affected groups. Objective Coordinated operations and regulations in administrative processes. The commitments between the engineering groups were agreed to by the affected groups. Strategy cooperated with domestic software development organizations. Plan Planed to keep enhancing tactical programs, to verify SDP, to modify SCM, and to be based on the integration of MILSTD-498.

Do Check Act

Developed tactical programs. Monitored the software development, the established SDP and SCM. Improved the established SDP, and return to the plan stage.

The CMM Firstly, we summarize the results of implementing the CMM from 1996 to 2000 as following table (See Table 4). At the same time, we employ SCM as an example to present what it means. In 1996, there were four goals of SCM that partial goals were achieved except that changes to identified software work products were controlled. Related commitment to perform, abilities performed, and activities performed were achieved until 1997. Giving another example which is software project planning (SPP), there are partial goals, commitment to perform, abilities to perform, and activities performed achieved as following table (See Table 4). In terms of SPP, expand key process practice of goals and common feature to understand when key process practice was achieved (See Table 5). The ABC This paper describes a software testing phase to understand the cost structure. In 1996, the planned cost on developing tactical programs was US$156,000 dollars, but the test was failure. Hence, we tested software again with supportive fighters. Consequently, the cost increased from US$156,000 to US$196,000. In order to reduce this failure, we modified the testing strategy and increased two stages for testing. One was simulation testing, the other was stress testing. The second phase In 2002, Taiwan government bought the same kind of aircrafts with the newest version system that has different know-how to transplant our government. In this phase, the different SDP was introduced and affected the current SDP. The question was how to integrate the different systems which have different development environment. The early system utilized four assembly languages to develop tactical program, supportive systems employed C, FORTRAN, and Pascal programming language to develop auxiliary software, like simulation. The latter system utilized Ada programming language to develop. Until now, all systems are on testing phase for higher reliability. For the new system, we are ready to introduce the new standard of software development, ISO/IEC 12207, and of performance measurement, Capability Maturity Model® Integration. At the same time, establish a technical working group to analyze and evaluate new standards, dispatch related officers to be trained, and review the current software processes.

8

Proceedings of the 39th Hawaii International Conference on System Sciences - 2006

Level

Table 4: the results of implementing the CMM 1st year 2nd year Key Process Area (KPA) (1996) (1997)

3rd year (1998)

Software Quality Management żŸ Ŷ Integrated Software Management ż Ƒ żŸ Ƒ Intergroup Coordination ż Ƒ żŸ Ŷ Organization Process Definition ż Ƒ Training Program ż Ŷ ƔŸ Ŷ Peer Review żŸ Ŷ ƔŸ Ŷ Requirements Management ż Ƒ żŸ Ŷ ƔŸŶ Repeatable Software Project Planning (SPP) ż Ƒ żŸƑ żŸ Ŷ Software Project Tracking ż Ŷ ƔŸ Ŷ Software Subcontract Management żŸ Ŷ żŸ Ŷ ƔŸ Ŷ Software Quality Assurance (SQA) ż Ƒ żŸƑ ƔŸ Ŷ Software Configuration Management (SCM) żŸ Ŷ ƔŸ Ŷ Symbol description ż: Partial goals are achieved. Ɣ: All goals are achieved completely. : Partial commitments to perform are achieved. Ÿ:All commitments to perform are achieved. Ƒ: Partial abilities to perform are achieved. Ŷ:All abilities to perform are achieved completely. : Partial activities performed are achieved. :All activities performed are achieved completely.

4th stage (1999~2000)

żŸŶ żŸŶ żŸŶ żŸ Ƒ

Managed Defined

ƔŸ Ŷ

Table 5: the results of software project planning (SPP) 1st year

Key Process Practice Goals

Software estimates are documented for use in planning & tracking

Commitment to perform Abilities to perform

Activities performed

5.4 Lessons learnt It appears that it is very important to invest adequate resource, to make goals clear, and to actively monitor progress toward those goals for SPI. ABC In this paper, we emphasize the SPI of tactical program and employ ABC to set up the casual relationship between resources and activities, but we are a non-profit organization to restrain from costing data collection. Hence, we change the role of ABC to understanding the costing allocation for policy making of software development. Hence, the vision and goals always change to result in changes of

3rd year

4th year

Ɣ Ɣ

Software project activities and commitments are planned and documented. Affected group and individuals agree to their commitment. A project software manager is designated to be responsible for commitments The project follows a written organizational policy for planning. A documented and approved statement of work exists for the project. Responsibilities for developing the software plan are assigned. Adequate resources and funding are provided for planning. All developers are trained in the software estimating and planning procedure. The software engineering group participates on the projects. Software project planning is initiated in the early stages. The software engineering group participates with others affected group. Software project commitments are reviewed with senior management. A software life cycle is identified or defined. The project’s software development plan is developed. The plan for the software project is documented.

2nd year

Ɣ Ÿ Ÿ

Ŷ Ŷ Ŷ Ŷ

processes for need of resource re-allocation to face dynamic setting. Balanced scorecard Although BSC evaluate the performance of firms from a balanced viewpoint on four perspectives, there exist many deficiencies. We point out whether the processes always are continuous improvement, whether all the members trained are achieving the expected result. In other words, establish the relations of both cause and effect to each perspective. Software process improvement Until now, we have employed the CMM for performance measurement, redefined the SDP and activities for each process, made the process more

9

Proceedings of the 39th Hawaii International Conference on System Sciences - 2006

effective, established SCM, a quantitative metrics for developing risk, SQA, testing strategy, and document standard on documents. There exist many critical success factors for the proposed model, such as effective communication, active involvement, sincere commitment, cooperative teamwork, complete empowerment and working disciplines…etc. The critical point for these factors is to make it operate harmoniously. Everyone involves and communicates with each other respectfully. The management level empowers and commits to the lower level. For example, establish a consensus on related standards via consecutive meeting and informal discussion for a long time.

[8]

[9]

[10]

[11]

[12]

6. Conclusion After implementing the ABCM, we have made our software development activities predictable, more productive, and the higher-quality tactical program. At the same time, this paper proposes a feasible model to be applied to SDP, especially in SPI. There are four contributions in this paper. Firstly, provides a feasible model for firms with knowing how to make a policy of SDP. Secondly, chiefly integrates managerial methods and technical methods on the proposed model from a balanced perspective. Third, provides an executable framework for performing, evaluating, and improving software development from process-based perspective. Finally, this paper attempts to create a new understanding of how to improve the SDP suited for organizational benefit and purposes.

[13]

[14] [15] [16]

[17]

7. References [1]

[2]

[3]

[4]

[5]

[6]

[7]

Abrahamsson, Pekka, Commitment development in software process improvement: critical misconceptions, Proceeding of ICSE-23, 2001 Epstein, M. and J.-F. Mazoni, Implementing corporate strategy: from tableaux de board to balanced scorecard, European Management J., Vol. 16, No. 2, pp. 190-203 Fitzgerald, B.; O'Kane, T., A longitudinal study of software process improvement;, Software IEEE, Vol. 16, Issue 3, May-June 1999 P.p. 37 - 45 Gunasekaran, A., “Design of activity-based costing in a small company: a Case Study,” Computer & Industrial Engineering, 37, 1999, pp.413-416 Haley, T. J., Software process improvement at Raytheon, Software IEEE, Vol. 13, Issue 6, 1996, p.p. 33 - 41 Harter, Donald E., Mayuram S. Krishnan, Sandra A. Slaughter, The life cycle effects of software process improvement: a longitudinal analysis, 1998, Proceedings of the international conference on Information systems Helberg. C., J. E. Galletly, J. R. Bicheno, Simulating activity costing, Industrial Management and Data

[18]

[19]

[20]

[21]

[22] [23]

[24]

System, 94 (9), 1994, p.p. 38 Humphrey , W.S.; Snyder, T.R.; Willis, R.R., Software process improvement at Hughes Aircraft, Software IEEE, Volume 8, Issue 4, July 1991, p.p.11–23 Herbselb, J. D., D. R. Goldenson, A systematic survey of CMM experience and results, Proceeding of ICSE-18, 1996 Kaplan, Robert S. and David P. Norton, The balanced scorecard – measures that driver performance, Harvard Business Review, January-February 1992 Kaplan, Robert S. and David P. Norton, Putting the balanced scorecard to work, Harvard Business Review, September-October 1993 Kaplan, Robert S. and David P. Norton, Using the balanced scorecard as a strategic management system, Harvard Business Review, January-February 1996 Kaplan, R. S., D. P. Norton, Balanced scorecard: insight, experience & ideas for strategy-focused organizations, Harvard Business Review, May-June 2001 Kaplan, Robert S. and A. A. Atkinson. 1998. Advanced management accounting, New Jersey: Prentice Hall, Inc. Kotter John P. etc., Harvard business review on change, Harvard Business Review, 1998 Liberatore, M. J., T. Miller, A framework for integrating activity-based costing and the balanced scorecard into the logistics strategy development and monitoring process. Journal of Business Logistics, 1998, Vol. 19, Issue 2, p.p. 131 Maiga, A. S., F. A. Jacobs, Balanced scorecard, activitybased costing and company performance: An empirical analysis. Journal of Managerial Issues, Fall 2003. Vol. 15, Issue 3, p.p. 283 Maisel, L. S., Performance measurement: The balanced scorecard approach, Journal of Cost Management Vol. 6, No. 2, Summer 1992, pp. 47-52. Mooraj, Stella, Daniel Oyon and Didier Hostettler, The balanced scorecard: a necessary good or an unnecessary evil?, European Management Journal, Vol. 17, No. 5, October 1999, pp. 190-203 Papalexandris, A., G. Ioannou and G. P. Prastacos , Implementing the balanced scorecard in Greece: A software firm’s experience, Long Range Planning, Volume 37, Issue 4, August 2004, Pages 292-293 Paulk, M. C., C. V. Weber, S. M. Garcia, M. B. Chrissis, and M. Bush, “Capabiliyt maturity model for Software, Version 1.1, CMU/SEI-93-TR-24, SEI, Pittsburgh, 1993 Raz, T., D. Elnathan, Activity based costing for Project, Int. J. of Project Mgmt., Vol. 17, No. 1, 1999, pp. 61-67 Sievanen, Matti, Katja Tornberg. Process-based costing: The best of activity-based costing, AACE International Transactions. Morgantown: 2002. p. CS151 Wouters, M. J. F., Decision orientation of activity-based costing, Int. J. Prod. Econom. 36, 1994, p.p. 75-84

10