SEI Documents List
[2007] [2006] [2005] [2004] [2003] [2002] [2001] [2000] [1999] [1998] [1997] [1996] [1995] [1994] [1993] [1992] [1991] [1990] [1989] [1988] [1987] [1986] [PDF]
2004 Reports
Annual Report
2004 Annual Report
Annual Report, 2004
The 2003 SEI Annual Report describes the accomplishments of the SEI during fiscal year 2004 (October 1, 2003 through September 30, 2004). For each of the SEI's focus areas, the report summarizes key research and support that the SEI provided for developers and acquirers of software-intensive systems. The report also presents information about the SEI, its staff members, and its organization, including staff accomplishments, publications, leadership positions, demographics, dissemination activities, and funding data.
http://www.sei.cmu.edu/publications/documents/04.reports/04ar/
Handbooks
CMU/SEI-2004-HB-001,
ADA443478
Advanced Information Assurance Handbook
May, C.; Baker, M.; Gabbard, D.; Good, T.; Grimes, G.; Holmgren, M.; Nolan, R.;
Nowak, R.; & Pennline, S.
This handbook is for technical staff members charged with administering and securing information systems and networks. The first module briefly reviews some best practices for securing host systems and covers specific techniques for securing Windows 2000 and Red Hat Linux systems. It also discusses the importance of monitoring networked services to make sure they are available to users and briefly introduces two software tools that can be used for monitoring. The second module covers the importance of firewalls and provides instructions for their configuration and deployment. The third module presents the many tasks involved in using an intrusion detection system (IDS) on a network. Topics covered include implementing IDSs on host computers and on networks, using Snort (the most common open-source IDS), and interpreting and using the information gathered using an IDS. The fourth and final module covers real-world skills and techniques for synchronizing the time on networked computers from a central clock, collecting and securing information for forensic analysis, and using a remote, centralized storage point for log data gathered from multiple computers.
http://www.sei.cmu.edu/publications/documents/04.reports/04hb001.html
CMU/SEI-2004-HB-003,
ADA453304
OCTAVE-S Implementation Guide, Version 1
Alberts, C.; Dorofee, A.; Stevens, J.; & Woody, C.
The Operationally Critical Threat, Asset, and Vulnerability EvaluationSM (OCTAVE®) approach defines a risk-based strategic assessment and planning technique for security. OCTAVE is a self-directed approach, meaning that people from an organization assume responsibility for setting the organizations security strategy. OCTAVE-S is a variation of the approach tailored to the limited means and unique constraints typically found in small organizations (less than 100 people). OCTAVE-S is led by a small, interdisciplinary team (three to five people) of an organizations personnel who gather and analyze information, producing a protection strategy and mitigation plans based on the organizations unique operational security risks. To conduct OCTAVE-S effectively, the team must have broad knowledge of the organizations business and security processes, so it will be able to conduct all activities by itself.
http://www.sei.cmu.edu/publications/documents/04.reports/04hb003.html
Special Reports
CMU/SEI-2004-SR-010,
ADA431122
Benefits of Improvement Efforts
Capell, P.
This special report surveys the process improvement efforts undertaken by programs and projects that incorporate software-intensive systems. It describes the specific process improvement efforts undertaken and reports on the benefits achieved. In so doing, the report demonstrates the potential of process improvement activities to help contractors and acquirers meet their performance, budget, and delivery time requirements. Additionally, the report identifies several recurring themes:
- All improvement efforts are based on the concept and the goal of eliminating errors in process upstream.
- While improvement efforts are typically driven by cost and measured by return on investment, quality attributes such as security and stability are often of more value to the success of the overall project.
- Most improvement efforts will yield benefits as long as those efforts follow general rules and use appropriate methods.
Finally, the report makes the case for applying process improvement methods and tools throughout the acquisition effort.
http://www.sei.cmu.edu/publications/documents/04.reports/04sr010.html
CMU/SEI-2004-SR-008
CMMI® Interpretive Guidance Project: What We Learned
Chrissis, M.; Konrad, M.; Shrum, S.; Smith, K.; & Wemyss, G.
This report summarizes the results of the Capability Maturity Model Integration (CMMI) Interpretive Guidance Project. It summarizes and analyzes the 7500 comments received regarding CMMI adoption that were reported by CMMI users and potential users. It also describes the actions being taken by the Software Engineering Institute (SEI) to address the issues identified by Interpretive Guidance Project participants.
Although the initial goal of the project was to develop interpretive guidance, after data gathering and analysis the team realized that most respondents' input did not require interpretive guidance. Based on a relatively small number of comments, interpretive guidance was planned, including papers, frequently asked questions (FAQs), and new CMMI courses. However, participant comments clearly showed CMMI interpretive guidance to be less of an adoption issue than suspected.
Some comments covered issues already being addressed as part of SEI activities, including the development of Standard CMMI Appraisal Method for Process Improvement (SCAMPISM) Class B and C methods, the collection of cost and benefit information, and the creation and improvement of CMMI training courses. The majority (approximately 80%) of the actionable comments received were best handled as change requests to help guide the ongoing improvement of the CMMI Product Suite.
http://www.sei.cmu.edu/publications/documents/04.reports/04sr008.html
CMU/SEI-2004-SR-009
Code of Professional Conduct for SEI Services, Version 1.0
The Code of Professional Conduct is a set of expectations and practices for those operating under license or other applicable agreement with Carnegie Mellon University, acting through its Software Engineering Institute (SEI). The purpose of the Code is to establish appropriate standards of professional conduct for SEI-Authorized or Certified Professionals, Candidates for SEI authorizations or certifications, and SEI Partners.
http://www.sei.cmu.edu/publications/documents/04.reports/04sr009.html
CMU/SEI-2004-SR-015,
ADA431068
Systems Quality Requirements Engineering (SQUARE) Methodology: Case Study on Asset Management System
Chen, P.; Dean, M.; Ojoko-Adams, D.; Osman, H.; Lopez, L., Xi, N.; & Mead, N.
This report exemplifies the application of the Systems Quality Requirements Engineering (SQUARE) methodology developed by the Software Engineering Institute's Networked Systems Survivability Program on an asset management application. An overview of the SQUARE process and the vendor is presented, followed by a description of the application under study. The nine-step process of requirements engineering is then explained, and feedback on its implementation is provided. The report concludes with a synopsis of the findings and recommendations for future work.
This report is one of a series of reports resulting from research conducted by the SQUARE Team as part of an independent research and development project of the Software Engineering Institute.
http://www.sei.cmu.edu/publications/documents/04.reports/04sr015.html
Technical Notes
CMU/SEI-2004-TN-024,
ADA443479
Applications of the Indicator Template for Measurement and Analysis
Goethert, W. & Siviy, J.
Organizations often do not achieve the potential benefits of a sound measurement program due to the inconsistent construction and interpretation of indicators derived from measurement data. This technical note presents guidance for adapting and completing an indicator template-a tool the Software Engineering Institute has developed to precisely describe an indicator-including its construction, correct interpretation, and how it can be utilized to direct data collection and presentation and measurement and analysis processes. An indicator template can help an organization to define indicators, or graphical representations of measurement data, which describe the who, what, where, when, why, and how for analyzing and collecting measures. This technical note defines each field of the indicator template, provides example inputs, and shows how the template may be used in the context of a process improvement effort that uses the Capability Maturity Model® Integration framework and/or Goal-Driven Software Measurement.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn024.html
CMU/SEI-2004-TN-021,
ADA443152
Assumptions Management in Software Development
Lewis, G.; Mahatham, T.; & Wrage, L.
Software developers constantly make assumptions about the interpretation of requirements, design decisions, operational domain, environment, characteristics of input data, and other factors during system implementation. These assumptions are seldom documented and less frequently validated by the people who have the knowledge to verify their appropriateness. Additionally, the business, legal, and operating environments are always changing, as well as the software itself, rendering previously valid assumptions invalid. This technical note explores assumptions management as a method for improving software quality. This exploration covers assumptions management concepts, results of work on a prototype Assumptions Management System, conclusions, lessons learned, and potential work in this area.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn021.html
CMU/SEI-2004-TN-023,
ADA443159
Case Study: A Measurement Program for Product Lines
Cohen, S.; Zubrow, D.; & Dunn, E.
The Naval Undersea Warfare Center (NUWC) Division Newport Ranges, Engineering, and Analysis Department applied product line practices in the development of systems for the U.S. Navy test ranges it supports. To gauge the success of its product line effort, NUWC must be able to measure the effectiveness of the product line approach compared to more traditional development approaches. To do this, NUWC established a software measurement team to develop and monitor a measurement program. The team includes representatives from programs using the NUWC core asset base, RangeWare. Four projects are currently contributing to the measurement program. This report documents NUWC's approach for measurement by describing the Goal-Driven Software Measurement approach adopted by the test range product line effort and by providing early results of the measurement program.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn023.html
CMU/SEI-2004-TN-001
ADA421675
COTS Acquisition Evaluation Process: Preacher's Practice
Sai, V.
This paper reflects a successful effort to apply commercial off-the-shelf (COTS)-based engineering principles to a software acquisition by the Financial and Business Services (FABS) and Information Technology (IT) departments at the Software Engineering Institute. The team responsible for the execution of the project was guided by the principles taught in the "COTS-Based Systems for Program Managers" and "COTS Software Evaluation for Practitioners" training programs conducted by the COTS-Based Systems Initiative at the Software Engineering Institute. Some of the major expectations set and realized included precise comprehension of requirements and preferences, ability to identify weak links in the proposed solutions, support for the "buy versus build" decision and the product recommendation, the promise of a shorter implementation phase, and brimming confidence based on a well-informed project approach.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn001.html
CMU/SEI-2004-TN-037,
ADA431120
Creating and Using Software Architecture Documentation Using Web-Based Tool Support
Stafford, J.
Documenting software architecture (DSA) is a crucial facet in the development of a software system, yet often it is carried out in a haphazard fashion, if at all. Lack of attention to the documentation results from insufficient guidance about what should be documented and when and how to capture the information so that system stakeholders find it useful. The book Documenting Software Architectures: Views and Beyond provides such guidance in the DSA approach, and this report describes the conceptual design for a documentation system based on that approach. A system is envisioned that enables the architect to capture architectural decisions and related artifacts as a living repository that can communicate information to stakeholders who might be both geographically and temporally distributed. The system must communicate in a way that allows each stakeholder quick and easy access to information relevant to the person's role in the software development process. This report describes a design prototype that demonstrates a Web-based approach to creating, communicating, and using software architecture throughout the life of the system.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn037.html
CMU/SEI-2004-TN-016,
ADA455625
Dependability Cases
Weinstock, C.; Goodenough, J.; & Hudak, J.
Many large software systems display fragility or a lack of dependability caused by inattention to details at various stages of development (e.g., missing data, undocumented assumptions, lack of testing), resulting in a failure to catch errors. This technical note explains how to create a dependability case for a system that helps identify and keep track of such details. A dependability case is defined here as a structured argument providing evidence that a system meets its specified dependability requirements. The technical note describes how to structure the argument and present evidence to support it. A sample problem is presented, as well as issues raised by that problem and future goals.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn016.html
CMU/SEI-2004-TN-005,
ADA443481
Embedded Systems Architecture Analysis Using SAE AADL
Feiler, P.; Gluch, D.; Hudak, J.; Lewis, B.
The emerging Society of Automotive Engineers Architecture Analysis and Design Language (AADL) standard is an architecture modeling language for real-time, fault-tolerant, scalable, embedded, multiprocessor systems. It enables the development and predictable integration of highly evolvable systems as well as analysis of existing systems. It supports early and repeated analyses of a system's architecture with respect to performance-critical properties through an extendable notation, a tool framework, and precisely defined semantics. This report discusses the role and benefits of using the AADL in the process of analyzing an existing avionics system. The AADL is used to describe architecture patterns in the system being analyzed and to identify potentially systemic issues in the system. Findings related to timing, scheduling, and fault tolerance and the benefits of the use of the AADL are examined.
The report also highlights the benefits of working with architecture abstractions that are reflected in the AADL notation, in particular the separation of architecture design decisions from implementation decisions. Such a lightweight architecture analysis is typically followed by a full-scale AADL model of the system with required and actual timing, performance, and reliability figures, and its analysis to determine whether the requirements are met.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn005.html
CMU/SEI-2004-TN-026,
ADA443484
Illuminating Patterns of Perception: An Overview of Q Methodology
Brown, M.
Q methodology is a research method with a proven history for illuminating agreement and differences among individual and group perceptions. This technical note describes ways for applying Q methodology to assist software engineering processes. As a project management tool, it can help to articulate system requirements and project risk. It can also be used to identify many of the hidden risks and costs associated with system efforts. Q methodology complements a project manager's suite of methodologies and tools by providing a means for uncovering stakeholder perceptions of incorrectly specified requirements, looming risks, and hidden costs. In doing so, it provides stakeholders and project managers with additional insights for troubleshooting project threats.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn026.html
CMU/SEI-2004-TN-017,
ADA443486
Integrating the Quality Attribute Workshop (QAW) and the Attribute-Driven Design (ADD) Method
Nord, R.; Wood, W.; & Clements, P.
The Software Architecture Technology Initiative at the Carnegie Mellon® Software Engineering Institute (SEI) has developed a number of architecture-centric methods that are currently in use. The initiative is now focusing on integrating these methods, as well as building bridges between them and software-development processes and software- architecture efforts outside the SEI, while continuing to refine existing methods and models. The goal is to provide software architects with a comprehensive, end-to-end approach for creating and using the right software architecture for the job at hand.
This technical note reports on a proposal to integrate the SEI Quality Attribute Workshop (QAW) and the SEI Attribute- Driven Design (ADD) method. The QAW is a way to elicit and articulate detailed quality attribute requirements for a system, which the architecture must support. ADD is an architectural design method that starts with statements of quality attribute requirements and guides the architect through a series of design decisions that help to meet those requirements. Integrating these methods involves tailoring the QAW to provide the types of results needed by ADD and tailoring the ADD method to take full advantage of the results provided by the QAW.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn017.html
CMU/SEI-2004-TN-036,
ADA431084
Integrating Software-Architecture-Centric Methods into Extreme Programming (XP)
Nord, R.; Tomayko, J.; & Wojcik, R.
This technical note fits the architecture-centric methods of the Carnegie Mellon® Software Engineering Institute (SEI) into the framework of Extreme Programming (XP). These methods include the Architecture Tradeoff Analysis Method®, the SEI Quality Attribute Workshop, the SEI Attribute-Driven Design method, the SEI Cost Benefit Analysis Method, and SEI Active Reviews for Intermediate Design. This report presents a summary of XP and examines the potential uses of the SEI's architecture-centric methods.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn036.html
CMU/SEI-2004-TN-003,
ADA455623
Measuring Systems Interoperability: Challenges and Opportunities
Kasunic, M. and Anderson, W.
Despite laudable case-by-case efforts, there is today no method for tracking interoperability on a comprehensive or systematic basis. This technical note presents best practices for measuring systems interoperability and assisting military planners in the acquisition, development, and implementation of command, control, communications, computers, and intelligence (C4I) systems that are interoperable. The Levels of Systems Interoperability (LISI) Model, although immature, provides a structured and systematic approach for assessing and measuring interoperability throughout the systems life cycle. In addition to exploring the many complex issues surrounding the state of interoperability for military applications, next steps for promoting a deeper understanding of interoperability and recommended measures that will promote systems interoperability are presented.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn003.html
CMU/SEI-2004-TN-030,
ADA443141
Model Problem for an Open Robotics Controller, A
Hissam, S. & Klein, M.
This report describes the model problem created to support the continued enhancement and development of the prediction-enabled component technology (PECT) reasoning frameworks for an industrial trial in the domain of industrial robotics. The model problem described in this report is an abstract representation of the parallel tasking and component configuration typically seen in a successful industrial robotics controller. Although motivated by the domain of industrial robotics, the model problem is applicable to other domains typified by embedded control systems consisting of both periodic and stochastic behavior and using fixed-priority scheduling with real-time performance characteristics.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn030.html
CMU/SEI-2004-TN-018,
ADA442864
Overview of ComFoRT: A Model Checking Reasoning Framework
Ivers, J. & Sharygina, N.
Component technologies are gaining acceptance in the software community as effective tools for quickly assembling increasingly complex systems from components. Most of the current component technologies, however, fail to help developers predict important software qualities like performance, safety, and reliability. A prediction-enabled component technology (PECT) augments the capabilities of a component technology with one or more reasoning frameworks that package quality specific analyses and the means to apply them to component-based systems. Model checking is an automated approach for exhaustively analyzing whether systems satisfy specific behavioral claims that can be used to characterize safety and reliability requirements. This technical note describes ComFoRT, a reasoning framework that packages the effectiveness of state-of-the-art model checking in a form that enables users to apply the analysis technique without being experts in its use, and its incorporation in a PECT.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn018.html
CMU/SEI-2004-TN-043,
ADA431162
Promising Technologies for Future Systems
Lewis, G.; Morris, E.; & Wrage, L.
Joint Vision 2020, set forth by the Department of Defense, places a number of non-trivial, challenging requirements on future systems: integration of data from distributed, dynamic, heterogeneous sources on the fly, and networks robust and fast enough to support secure real-time manipulation, fusion, and presentation of all this data. This technical note presents a few of the many programs, technologies, and research efforts that are addressing the challenges faced by future systems.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn043.html
CMU/SEI-2004-TN-013,
ADA430992
Risk Based Diagnostics
Williams, R.; Ambrose, K.; Bentrem, L.; & Merendino, T.
The Risk Focus Team at the Carnegie Mellon® Software Engineering Institute (SEI) has identified a means of characterizing risk-based diagnostic methods and techniques. The Risk Focus Team has constructed a tentative "roadmap" for consultants, program managers, and other personnel involved in the systems and software acquisition community. The roadmap will help them to identify the appropriate risk diagnostic techniques for assessing threats to program success.
This technical note describes the characteristics that determine whether a risk diagnostic method qualifies for the roadmap. The technical note identifies three methods, the SEI Software Risk Evaluation, Architectural Tradeoff Analysis Method®, and the SEI Commercial off-the-shelf (COTS) Usage Risk Evaluation that fit the characteristics described. The technical note also describes the characteristics of diagnostic methods that do not qualify for the roadmap.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn013.html
CMU/SEI-2004-TN-002,
ADA431121
Roadmap of Risk Diagnostic Methods: Developing an Integrated View of Risk Identification and Analysis Techniques, A
Williams, R.; Ambrose, K.; & Bentrem, L.;
This technical note illustrates the concept and value of the Risk Diagnostic Roadmap (RDR), which is envisioned to be a comprehensive reference tool for risk identification and analysis (RI&A) techniques. Program Managers (PMs) responsible for developing or acquiring software-intensive systems typically identify risks in different ways. Some PMs and consultants rely on free-form brainstorming or volunteered statements. Others select risk diagnostic methods based on convenience and familiarity. Both approaches are focused more on the experience and knowledge of the PM and/ or consultant than on the requirements of the program.
Researchers at the Carnegie Mellon Software Engineering Institute are developing an alternative approach in the form of the RDR. The RDR is populated with an "appropriate" set of risk diagnostic methods. The roadmap enables PMs to compare risk diagnostic methods and choose the best method(s) for their particular situations.
This technical note describes the evolution of the Risk Diagnostic Roadmap and presents the attributes that qualify risk diagnostic tools as "appropriate" for the roadmap. SEI researchers then use these attributes to select three candidate risk diagnostic methodologies for inclusion in the RDR
http://www.sei.cmu.edu/publications/documents/04.reports/04tn002.html
CMU/SEI-2004-TN-022,
ADA443487
Security and Survivability Reasoning Frameworks and Architectural Design Tactics
Ellison, R.; Moore, A.; Bass, L.; Klein, M.; & Bachmann, F.
The Software Engineering Institute (SEI) has been investigating disciplined software architecture design for several years. The SEI approach includes a collection of "quality attribute reasoning frameworks" that understand both quality attribute reasoning and how architects design for the quality attribute under particular situations. The approach was first applied to the quality attributes of modifiability and performance. This report is an initial attempt to use the same method for the related quality attributes of security and survivability. The report includes an initial organization of security within the framework, a partial explication of elements of that framework, and three representative examples of existing security reasoning frameworks.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn022.html
CMU/SEI-2004-TN-031,
ADA430991
Software Component Certification: 10 Useful Distinctions
Wallnau, K.
Using software components to develop mission-critical systems poses a number of technical, organizational, and economic challenges. One persistent and largely unaddressed challenge is how the consumers of software components- that is, the developers of mission-critical systems-can obtain a meaningful level of trust in the runtime behavior of software components. The most frequently cited concerns are centered on issues of security; for example, trust that a component does not contain malicious code or exhibit vulnerabilities that can be exploited by malicious code. There are, however, other concerns about software component behavior that can be just as important. For example, in an embedded weapon system, it may be crucial to trust that a component will always execute a function within a particular time bound or never introduce unbounded priority inversion.
Certification is a practical, proven means of establishing trust in various sorts of things in other disciplines and is, therefore, a natural contender for developing trust in software components. This technical note does not propose a particular certification regimen for components. Rather, it introduces a series of 10 distinctions that can help in understanding different aspects of certification in the context of software components.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn031.html
CMU/SEI-2004-TN-044,
ADA431119
Software Process Improvement and Product Line Practice: Building on Your Process Improvement Infrastructure
Jones, L.
Many organizations with an existing process improvement initiative are also considering a software product line adoption initiative. Managers in these organizations often ask how they can build on their process improvement work and reconcile these two significant change initiatives. This technical note addresses one aspect of this question: how a process improvement infrastructure can provide a foundation for product line adoption.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn044.html
CMU/SEI-2004-TN-011,
ADA443501
Software Product Lines: Experiences from the Sixth DoD Software Product Line Workshop
Bergey, J.; Cohen, S.; Jones, L.; & Smith, D.
The Carnegie Mellon Software Engineering Institute held the Sixth Department of Defense (DoD) Product Line Practice Workshop in September 2003. The workshop was a hands-on meeting to share DoD product line practices, experiences, and issues and to discuss ways in which specific product line practices are accomplished within the DoD. Participants reported encouraging progress on DoD software product lines. Additionally, participants addressed some important implementation questions. This report synthesizes the workshop presentations and discussions.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn011.html
CMU/SEI-2004-TN-045,
ADA431118
SQUARE Project: Cost/Benefit Analysis Framework for Information Security Improvement Projects in Small Companies System Quality Requirements Engineering (SQUARE) Team
Xie, N.; Mead, N.Nancy R. Mead
Many companies rely on historical data to build predictability models for cost/benefit justification of future projects. Unfortunately, for small companies, which generally do not have a process for collecting security data, the costs and the benefits of information security improvement projects have been very difficult to estimate and justify. In addition, detailed attack data are simply not available to be used as references in cost estimations. Given these difficulties, many small companies choose to ignore entirely the security vulnerabilities in their systems, and many suffer the consequences of security breaches and significant financial loss. Small companies that do implement security improvement projects often have problems understanding the cost structures of their improvement initiatives and how to translate risk exposures into costs that can be passed on to their customers.
To deal with the aforementioned problems, this report describes a general framework for hierarchical cost/benefit analysis aimed at providing acceptable estimations for small companies in their information security improvement projects. The framework classifies misuse cases into categories of threats for which nationally surveyed risks and financial data are publicly available. For each category of threats, costs, benefits, baseline risks, and residual risks are estimated. The framework then generates all permutations of possible solutions and analyzes the most optimal approach to maximize the value of security improvement projects. The framework analyzes the problems from five dimensions: Total Implementation Costs, Total System Value, Net Project Value, Benefit/Cost Ratio, and Risk Exposures. The final proposed system will be derived from the comparisons of these dimensions, taking into consideration each company's specific situation.
This report is one of a series of reports resulting from research conducted by the System Quality Requirements Engineering (SQUARE) Team as part of an independent research and development project of the Software Engineering Institute.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn045.html
CMU/SEI-2004-TN-012,
ADA443467
Study of Product Production in Software Product Lines, A
Chastek, G.; Donohoe, P.; McGregor, J.
A software product line organization exists to produce products. Much of the research on creating products via product lines has focused on developing core assets such as requirements, architectures, and components. This technical note presents the results of a study that focused on how product line organizations create products (e.g., their production strategy and how core assets are used in the production process). These results include compiled responses to the questionnaire used in the study and follow-up interviews.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn012.html
CMU/SEI-200-TN-004,
ADA443505
Survivable Functional Units: Balancing an Enterprise's Mission and Technology
Rogers, L.
Enterprises strive for success in fulfilling their mission to their customers. Information and its management are key components of their ability to succeed. Computer systems and network infrastructure components-the technologies that process this information-are playing an increasingly larger role in support of an enterprise's ability to fulfill its customers' needs. Their role has grown to a point where the slightest disruption-break-ins or even attempted break- ins-can adversely affect the enterprise's ability to manage information and therefore deliver products and services to its customers.
Although system administrators often need to focus on the details of computer systems and network infrastructure components to keep them operating smoothly, they must also be able to see the role that these technologies play in support of the enterprise's mission. This technical note describes Survivable Functional Units, a way to think about these enterprise networks. Although Survivable Functional Units have always been a part of networks, they now have a name and a more rigorous definition, and they can be linked to the mission of the enterprise in a more straightforward manner. The intended audience for this technical note is system administrators and their immediate managers, though the concepts have wider applicability.
http://www.sei.cmu.edu/publications/documents/04.reports/04tn004.html
Technical Reports
CMU/SEI-2004-TR-007,
ADA443654
Advanced Engineering Environments for Small Manufacturing Enterprises: Volume II
Fenves, S.; Sriram, R.; Choi, Y.; Elm, J.; & Robert, J.
To assist the Small Manufacturing Enterprise (SME) in adopting Advanced Engineering Environments (AEEs), this report provides two self-assessment tools. The Self-Assessment Tool for Engineering Environments (SAT-EE) assists an SME in assessing the adequacy of the current computing support environment in handling technical tasks. The Self- Assessment Tool for Engineering Tool Capabilities (SAT-ETC) enables the SME to collect data on the needs of the company, and maps it to specific classes of AEE tools. An SME may migrate to higher AEE levels through an orderly sequence of steps. Migration success is enhanced by careful attention to AEE component selection and by application of a defined technology adoption process.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr007.html
CMU/SEI-2004-TR-013,
ADA443149
Alternative to Technology Readiness Levels for Non-Developmental Item (NDI) Software, An
Smith, J.
Defense acquisition policies require that program managers conduct technology readiness assessments for all critical technologies. Technology Readiness Levels (TRLs) are frequently used in performing these assessments. While there is considerable evidence to support the utility of using TRLs in assessing program risk, there are some difficulties in using TRLs with software. This report explores these problems as they apply to non-developmental item (NDI) software technology and products, including commercial off-the-shelf, government off-the-shelf, and open source software. The problems take four principal forms:
- TRLs "blur" several aspects of technology and product readiness into a single number.
- TRLs do not account for the criticality of a product or technology to the system as a whole.
- TRLs don't account for software technology and product aging.
- TRLs do not provide any means to deal with how the relative contributions of the various aspects of readiness vary throughout the life cycle of a system.
This report examines these issues in detail and proposes an alternative approach for determining product readiness of NDI software technology.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr013.html
CMU/SEI-2004-TR-020,
ADA431067
Approaches to Constructive Interoperability
Lewis, G. & Wrage, L.
Interoperability between systems requires the capability for users to exchange information (syntactic interoperability) and a common understanding of its meaning or how to act upon it (semantic interoperability). This report will discuss several current approaches to constructing systems of systems that have interoperability requirements, with respect to syntactic and semantic interoperability. The areas examined include Model-Driven Architecture, Service-Oriented Architecture, Web services, Open Grid Services Architecture, and Component Frameworks. These initial discussions assume that the interoperating systems agree on a common approach. Reaching an agreement can be challenging, especially when legacy systems are involved. Technical techniques and recommendations for reaching an agreement between systems that use differing technologies are also briefly explored.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr020.html
CMU/SEI-2004-TR-003,
ADA421663
Army Strategic Software Improvement Program (ASSIP) Survey of Army Acquisition Managers
Kasunic, M.
This report analyzes a survey that the Software Engineering Institute conducted on behalf of the Army Strategic Software Improvement Program (ASSIP). The survey was directed to Army program managers (PMs) and covered four areas of the acquisition system: the acquirer's environment, the developer's environment, communication between the acquirer and developer, and external factors that could affect the acquisition system. The study aimed to discover how PMs perceived major acquisition-related problem areas and to provide preliminary data upon which to base future data-gathering activities. Although the survey results were not conclusive, they indicated that requirements management was a primary area of concern among those who responded to the survey.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr003.html
CMU/SEI-2004-TR-002,
ADA455620
Case Study: IRS Business System Modernization Process Improvement
Anderson, L.; Fisher, M.; & Gross, J.
Recognizing problems with its legacy information technology systems, the U.S. Internal Revenue Service (IRS) embarked on a modernization effort over a decade ago, with limited success. In 1998, the IRS embarked on a new approach and awarded a contract to the PRIME Alliance to assume the development and integration role for the systems that were expected to modernize the IRS way of doing business. The IRS Business Systems Modernization Office (BSMO) was established to manage this program.
However, as with past modernization efforts, the BSMO had difficulties in developing the discipline to efficiently and effectively manage the acquisition aspects of this modernization effort. The General Accounting Office suggested that the BSM program instill this discipline by improving a number of management process areas, including its acquisition processes. This suggestion included application of the Software Acquisition Capability Maturity Model® (SA-CMM®) as guidance on how to improve.
This paper provides an overview of applying the SA-CMM to the IRS modernization effort to establish and implement more effective acquisition management processes and practices. The experience includes the process improvement planning stages of first selecting the SA-CMM as a framework for process improvement, through to completion of the final assessment where a maturity level 2 rating was achieved against the SA-CMM.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr002.html
CMU/SEI-2004-TR-001
CMMI Acquisition Module (CMMI-AM) Version 1.0
Bernard, T.; Gallagher, B.; Bate, R.; Wilson, H.
Building on relevant best practices extracted from the Capability Maturity Model Integration (CMMI) Framework, this report defines effective and efficient practices for government acquisition organizations. Acquisition best practices are focused inside the acquisition organization to ensure the acquisition is conducted effectively, and outside the acquisition organization as it conducts project monitoring and control of its suppliers. These best practices provide a foundation for acquisition process discipline and rigor that enables product and service development to be repeatedly executed with high levels of ultimate acquisition success.
This report contains the acquisition practices that should be performed by government acquisition organizations acquiring systems and/or services. These practices, however, can also be used by non-government organizations to improve their acquisition practices. This report does not contain prescribed implementation approaches for achieving acquisition best practices. Instead, the proven content of the CMMI Framework is used as a base and amplifications specific to the acquisition process are added.
Questions related to CMMI process areas are provided in the appendix to help managers and executives understand the acquisition organization's documented acquisition practices and the consistent application of those practices. Descriptions of implementation details can be found in the source documents listed in the bibliography.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr001.html
CMU/SEI-2004-TR-010,
ADA443742
Critical Success Factor Method: Establishing a Foundation for Enterprise Security Management, The
Caralli, R.
Every organization has a mission that describes why it exists (its purpose) and where it intends to go (its direction). The mission reflects the organization's unique values and vision. Achieving the mission takes the participation and skill of the entire organization. The goals and objectives of every staff member must be aimed toward the mission. However, achieving goals and objectives is not enough. The organization must perform well in key areas on a consistent basis to achieve the mission. These key areas-unique to the organization and the industry in which it competes-can be defined as the organization's critical success factors.
The critical success factor method is a means for identifying these important elements of success. It was originally developed to align information technology planning with the strategic direction of an organization. However, in research and fieldwork undertaken by members of the Survivable Enterprise Management (SEM) team at the Software Engineering Institute, it has shown promise in helping organizations guide, direct, and prioritize their activities for developing security strategies and managing security across their enterprises. This report describes the critical success factor method and presents the SEM team's theories and experience in applying it to enterprise security management.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr010.html
CMU/SEI-2004-TR-009,
ADA421613
Current Perspectives on Interoperability
Brownsword, L.; Carney, D.; Fisher, D.; Lewis, G.; Meyers, C.; Morris, E.; Place, P.;
Smith, J.; & Wrage, L.
This report describes current research within the software engineering community on the topic of interoperability between software systems. That research includes analyses of the different types of interoperability problems and issues and efforts to define models of interoperability that will aid in creating solutions to those problems.
The report also describes work that is currently underway at the Software Engineering Institute (SEI) in this area. That work originated in an independent research effort and now has grown into a separate technical initiative in the area of interoperability. The SEI initiative is currently focused on analyzing several aspects of interoperability: how it is manifest in different kinds of activities (i.e., programmatic vs. constructive vs. operational activities), the essential characteristics of interoperability, and the key principles on which solutions will depend.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr009.html
CMU/SEI-2004-TR-015,
ADA453378
Defining Incident Management Processes for CSIRTs: A Work in Progress
Alberts, C.; Dorofee, A.; Killcrece, G.; Ruefle, R.; & Zajicek, M.
This report presents a prototype best practice model for performing incident management processes and functions. It defines the model through five high-level incident management processes: Prepare/Sustain/Improve, Protect Infrastructure, Detect Events, Triage Events, and Respond. Workflow diagrams and descriptions are provided for each of these processes.
One advantage of the model is that it enables examination of incident management processes that cross organizational boundaries, both internally and externally. This can help computer security incident response teams (CSIRTs) improve their ability to collaborate with other business units and other organizations when responding to incidents.
Future reports will extend this work and provide additional guidance to enable both newly forming and existing incident management capabilities to use the model to determine where gaps exist in their current processes and to develop plans for creating, improving, or restructuring their incident management processes.
Although the processes defined in this document were originally developed for internal CSIRTs, the models and information presented here are applicable to other types of CSIRTs and other types of incident management and security management capabilities.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr015.html
CMU/SEI-2004-TR-016,
ADA441834
Discovering Architectures from Running Systems: Lessons Learned
Yan, H.; Aldrich, J.; Garlan, D.; Kazman, R.; & Schmerl, B.
One of the challenging problems for software developers is guaranteeing that a system as built is consistent with its architectural design. This report describes a technique that uses automatically generated runtime observations of an executing system to construct an architectural view of the system. In this technique, mappings are developed that exploit regularities in system implementation and architectural style. These mappings describe how low-level system events can be interpreted as more abstract architectural operations. In addition, this report describes the current implementation of a tool, called DiscoTect, that uses these mappings, and it shows how DiscoTect can highlight inconsistencies between implementations and architectures. Furthermore, two case studies are provided that illustrate how DiscoTect works and how it can be applied to real-world systems.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr016.html
CMU/SEI-2004-TR-008,
ADA455622
Documenting Component and Connector Views with UML 2.0
Ivers, J.; Clements, P.; Garlan, D.; Nord, R.; Schmerl, B.; Silva, J.
The widespread presence of the Unified Modeling Language (UML) has led practitioners to try to apply it when documenting software architectures. While early versions of UML have been adequate for documenting many kinds of architectural views, they have fallen somewhat short, particularly for documenting component and connector views. UML 2.0 has added a number of new constructs and modified some existing ones to address these problems. In this report, we explore how changes in this version affect UML's suitability as a notation for documenting component and connector views.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr008.html
CMU/SEI-2004-TR-006,
ADA421628
Integrated Approach to Software Process Improvement at Wipro Technologies: veloci-Q, An
Subramanyam, V.; Sambuddha, D.; Krishnaswamy, P.; & Ghosh, R.
This report captures the details of Wipro's quality journey through continuous process improvement. This journey towards excellence has led to the prestigious Institute of Electrical and Electronics Engineers (IEEE) Computer Society Award for Software Process Achievement in 2003. This award is for achieving high soft-ware process capability and establishing a basis for moving to a broad improvement program that concerns people and products, rather than just the processes.
This report details the process improvement activities and the evolution of processes and systems over a period of time. Wipro's integrated approach to quality-veloci-Q-is detailed with an emphasis on the process improvement initiatives, supporting technology, and people capability that bring positive business results and enable Wipro to meet its customers' ever-increasing demands. The challenges and benefits accrued from Wipro's total quality approach are outlined, including the quantitative results of measuring the impact of Wipro's process improvement model.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr006.html
CMU/SEI-2004-TR-011,
ADA455624
Integrating Software-Architecture-Centric Methods into the Rational Unified Process
Kazman, R.; Kruchten, P.; Nord, R.; Tomayko, J.
The Rational Unified Process (RUP) is used broadly by software developers. This technical report fits the Carnegie Mellon Software Engineering Institute's (SEI's) architecture-centric methods into the framework of the RUP. These methods include the Architecture Tradeoff Analysis Method, the SEI Quality Attribute Workshop, the SEI Attribute- Driven Design method, the SEI Cost Benefit Analysis Method, and SEI Active Reviews for Intermediate Design. Since the key process milestone of the Elaboration Phase of the RUP is a completed architecture, the architecture-centric methods appear early in the process during the first two phases (i.e., Inception and Elaboration). This report presents a summary of the RUP and then examines the potential uses of the SEI's architecture-centric methods.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr011.html
CMU/SEI-2004-TR-014,
ADA441876
Mapping TSP to CMMI
McHale, J. & Wall, D.
With the advent of CMMI® (Capability Maturity ModelSM Integration), development and maintenance organizations are faced with many issues regarding how their current practices, or new practices that they are considering adopting, compare to the new model. The Team Software ProcessSM (TSPSM), including the corequisite Personal Software ProcessSM (PSPSM), defines a set of project practices that has a growing body of evidence showing highly desirable process performance in terms of delivered product quality, schedule performance, and cost performance. TSP also has a history of favorable coverage with respect to the SW-CMM® (Capability Maturity Model for Software), a major precursor to CMMI, as well as several real-world implementations that have helped organizations to achieve high maturity levels in a relatively short period of time.
This report provides an essential element to facilitate the adoption of the TSP in organizations using CMMI, namely, a mapping of ideal TSP practices into the specific and generic practices of CMMI. By having such a mapping (also known as a gap analysis), those involved with process improvement and appraisal efforts can more easily determine how well the organization or a particular project is implementing the TSP, how well projects using TSP might rate with respect to CMMI, and where and how to fill any gaps in CMMI coverage. Organizations already following an improvement plan based on CMMI may also determine how TSP adoption might help them to achieve broader, deeper, or higher maturity implementations of CMMI goals and practices.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr014.html
CMU/SEI-2004-TR-017,
ADA431163
Performance Property Theories for Predictable Assembly from Certifiable Components (PACC)
Hissam, S.; Klein, M.; Lehoczky, J.; Merson, P.; Moreno, G.; & Wallnau, K.
This report develops a queueing-theoretic solution to predict, for a real-time system, the average-case latency of aperiodic tasks managed by a sporadic server. The report applies this theory to a model problem drawn in the domain of industrial robot control. In this model problem, a controller with hard periodic deadlines is "open" to third-party plug-in extensions. The sporadic server is used to limit the invasiveness of aperiodic tasks on the controller's hard deadlines. The theory developed in this report is used to predict the average-case latency of a plug-in managed by a sporadic server.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr017.html
CMU/SEI-2004-TR-018,
ADA453372
Results of SEI Independent Research and Development Projects and Report on Emerging Technologies and Technology Trends
Bergey, J.; Dietrich, S.; Firesmith, D.; Forrester, E.; Jordan, A.; Kazman, R.; Lewis,
G.; Lipson, H.; Mead, N.; Morris, E.; O'Brien, L.; Siviy, J.; Smith, D.; Woody, C.
Each year, the Software Engineering Institute (SEI) undertakes several Independent Research and Development (IR&D) projects. These projects serve to (1) support feasibility studies investigating whether further work by the SEI would be of potential benefit, and (2) support further exploratory work to determine whether there is sufficient value in eventually funding the feasibility study work as an SEI initiative. Projects are chosen based on their potential to mature and/or transition software engineering practices, develop information that will help in deciding whether further work is worth funding, and set new directions for SEI work. This report describes the IR&D projects that were conducted during fiscal year 2004 (October 2003 through September 2004). In addition, this report provides information on what the SEI has learned in its role as a technology scout for developments over the past year in the field of software engineering.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr018.html
CMU/SEI-2004-TR-022,
ADA431117
Software Product Line Adoption Roadmap
Northrop, L.
The tremendous benefits of taking a software product line approach are well documented. Organizations have achieved significant reductions in cost and time to market and, at the same time, increased the quality of families of their software systems. However, to date, there are considerable barriers to organizational adoption of product line practices and to widespread product line practice. Phased adoption is attractive as a risk reduction and fiscally viable proposition. This report introduces a variant of the Factory Pattern called the Adoption Factory pattern that provides a generic roadmap to guide a manageable, phased product line adoption strategy. In addition, the report examines the Adoption Factory pattern from multiple useful views and describes how it can be used. The report concludes with a summary of the Carnegie Mellon Software Engineering Institute's experiences with the pattern to date and its future plans with regard to the pattern.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr022.html
CMU/SEI-2004-TR-004,
ADA455619
Systems of Systems Interoperability
Morris, E.; Levine, L.; Meyers, C.; Place, P.; & Plakosh, D.
This technical report documents the findings of an internal research and development effort on system of systems interoperability (SOSI). The study was based on the belief that interoperability must occur at multiple levels within and across programs, and not solely in the context of a system construction. The Software Engineering Institute looked at the full range of barriers to achieving interoperability between systems, including programmatic, constructive, and operational barriers. An initial SOSI model representing this perspective was developed. The research method consisted of three activities: review of related research, conducting of small workshops, and interviews with experts. The literature survey focused on Department of Defense and related initiatives dedicated to achieving interoperability. Workshops were held in Washington, D.C. in February and May 2003. Interviews were conducted with experts representing each of the services, the National Reconnaissance Organization, and industry. Results from these activities are presented here.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr004.html
CMU/SEI-2004-TR-005,
ADA445651
Working with Small Manufacturing Enterprises: An Analysis of TIDE
Estrin, L.; Anderson, B.; Elm, J.; Garcia, S.; Foreman, J.; Robert, J.; Schenker, F.
This paper documents some of the challenges and risks facing programs or organizations trying to help small manufacturing enterprises (SMEs). The Technology Insertion, Demonstration, and Evaluation (TIDE) Program performed seven demonstration projects with SMEs. While the companies differed in size, technology needs, and in- house capabilities, they are typical of the companies to be found in the SME sector. This report examines the effort to help SMEs through demonstration projects. It describes the challenges that the TIDE Program personnel faced, and presents recommendations to help organizations in similar situations address or avoid those challenges.
http://www.sei.cmu.edu/publications/documents/04.reports/04tr005.html
[2007] [2006] [2005] [2004] [2003] [2002] [2001] [2000] [1999] [1998] [1997] [1996] [1995] [1994] [1993] [1992] [1991] [1990] [1989] [1988] [1987] [1986] [PDF]