Conference Paper

Key Software Engineering Concepts for Project Success: The Use of Boot Camp to Establish Successful Software Projects

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

The use of project initiation techniques is not new to academia or industry. While successfully using "real world" projects to educate software engineers, the master of software engineering (MSE) program at Carnegie Mellon University has learned some key concepts and topics that make software project initiation more successful. We have found that project success is linked to issues surrounding how teams are formed and the specific guidance that they are initially provided. The MSE program uses a concept we call "boot camp" that focuses on some key areas of Software Process issues and Human Communication.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... All student teams are required to do multiple presentations throughout the semester --in the extreme, every two weeks during our 14 week MSE "bootcamp" [7]. This represents seven or eight presentations per semester for each team, and by the end of the semester, all students are expected to give one or more presentations. ...
Article
Full-text available
Teaching Software Engineering to professional master's students is a challenging endeavor, and arguably for the past 20 years, Carnegie Mellon University has been quite successful. Although CMU teaches Software Engineering at sites world-wide and uses different pedagogies, the goal of the curriculum --to produce world-class software engineers --remains constant. This paper will discuss two of the most mature versions of Carnegie Mellon's Software Engineering program --the main campus program and its "daughter program" at the Silicon Valley Campus. We discuss the programs with respect to the dimensions of curriculum, how students work and learn, how faculty teach, curricular materials, and how students are assessed to provide insight into how Carnegie Mellon continues to keep its programs fresh, to adapt them to local needs, and to meet its goal of excellence after 20 years.
Conference Paper
Software designing phase is an important phase in the software development lifecycle. There could be a number technical and non-technical issues e.g., communication issues and understand-ability issues which may hinder desired progress in this phase affecting the software project output. We study how these issues affect software project by conducting interviews and surveys within software houses and IT concerns. We report how communication issues and understand-ability issues contribute statistically significantly towards failure in software projects within organizations.
Conference Paper
This paper is a reflection on how the studio concept is applied in the Master of Software Engineering (MSE) in the joint program between University of Coimbra (UC) and Carnegie Mellon University(CMU). The partnership is sponsored by the Portuguese Government through the CMU Portugal program. The original MSE concept of James Tomayko was based on the ideas of Donald Schon on the education of the "reflective practitioner". It evolved over time, with contributions of faculty and students. Some of the improvements were made by Mary Shaw with the introduction of the Methods course, others by David Root, Mel Rosso-Lloppard and Gil Taran, addressing current concerns on Studio structure and exporting the program to foreign partners such as the University of Coimbra. One of the key concerns we have seen is on the identification of what is good and should be repeated and what is not so good and should be changed. Students are asked to contribute to this effort, this paper is the author's contribution to the effort of continuous improvement made by the MSE.
Conference Paper
In an attempt to provide real-world industrial experience, an increasing number of academic programs are broadening their portfolio to include global development projects. In these projects, the customer, the team or even the faculty are in different locations than those of their students creating a set of real world experiences and educational challenges. Various project elements such as asynchronous communications, remote assessment, and required knowledge transfer make effective learning challenging and problematic. To understand how to help faculty members overcome some of these challenges, faculty at Carnegie Mellon have studied recent and past projects specifically where clients, and/or faculty advisors were not co-located with their students. This paper presents some of their findings, provides recommendations and explains where specific attention is required for project and learning success.
Conference Paper
The proposal based studio is a method to teach software engineers best practices without developing a "cookie cutter" environment. It teaches students how to get projects done in the fixed time of a degree program without relying on a dogmatic, fixed "recipe" process. This paper discusses how students are provided a template with six general process areas for which they must "propose" solutions. These proposed solutions are unique to each 4 to 5 member Master of Software Engineering team and are continuously reviewed by the faculty throughout the project.
Conference Paper
Many academic programs use industrial projects within their teaching curriculum. These provide an exposure to real customers, challenging problems currently faced by industry and the opportunity to interact with working professionals in a situation driven by quality, schedules, and users. Selecting projects that fit todaypsilas academic environment, is a constant challenge. This paper presents how at Carnegie Mellon we have refined our project selection criteria to provide a better fit between our needs and those of our industrial partners. Criteria, issues to consider and pitfalls to avoid in the project selection process will be discussed.
Article
Full-text available
This document provides an overview and an introduction to the People Capability Maturity Model (P-CMM) (Curtis95). Specifically, this document defines the concepts necessary to understand the P-CMM and the motivation and purpose behind the P-CMM. This overview describes the P-CMM structural components, consisting of key process areas within the five maturity levels of the P-CMM, and the principles that underlie each of the maturity levels. Finally, the document addresses potential uses of the P-CMM in assessing organizational practice or guiding improvement of an organization's workforce capability. The document is intended to provide an overview of the concepts of the P-CMM, while the People Capability Maturity Model (Curtis95) describes the key practices for each level of the P-CMM.
Article
The purpose of this review was to examine published research on small-group development done in the last ten years that would constitute an empirical test of Tuckman's (1965) hypothesis that groups go through the stages of "forming," "storming," "norming," and "performing." Of the twenty-two studies reviewed, only one set out to directly test this hypothesis, although many of the others could be related to it. Following a review of these studies, a fifth stage, "adjourning," was added to the hypothesis, and more empirical work was recommended.
Conference Paper
Many agile projects are doomed to fail before they even begin. Most projects fail not because of the technical ability of the team, but because project goals, objectives and context have not been taken into account when forming the project plan. Further, most teams new to agile often lack the basic training required to be successful on their first agile project. Using a lightweight project initiation framework (an inception deck), combined with an agile boot camp, teams can drastically improve their project's chances of success. This will both ensure more agile projects are delivered successfully, and aid agile's adoption into the greater software community
Article
Software engineering is forecast to be among the fastest growing employment field in the next decades. The purpose of this investigation is two-fold: Firstly, empirical studies on the personality types of software professionals are reviewed. Secondly, this work provides an up-to-date personality profile of software engineers according to the Myers–Briggs Type Indicator.
Article
Many companies now run boot camps--comprehensive orientation programs designed to help new hires hit the ground running. They're intense and intimidating, and new employees emerge from them with strong bonds to other recruits and to the organization. But at Trilogy, organizational consultant Noel Tichy discovered one program that's a breed apart. In this article, Tichy gives us a detailed tour of Trilogy's boot camp, Trilogy University, to demonstrate why it's so different--and so effective. Like the best boot camps, it serves as an immersion in both the technical skills new recruits will need for their jobs and Trilogy's corporate culture, which emphasizes risk-taking, teamwork, humility, and a strong customer focus. But this is a new-employee orientation session that's so fundamental to the company as a whole that it's presided over by the CEO and top corporate executives for fully six months of the year. Why? In two three-month sessions, these top executives hone their own strategic thinking about the company as they decide what to teach the new recruits each session. They also find the company's next generation of new products as they judge the innovative ideas the recruits are tasked with developing--making the program Trilogy's main R&D engine. And they pull the company's rising technical stars into mentoring roles for the new recruits, helping to build the next generation of top leadership. After spending months on-site studying Trilogy University, Tichy came away highly impressed by the power of the virtuous teaching cycle the program has set in motion. Leaders of the organization are learning from recruits at the same time that the recruits are learning from the leaders. It's a model, he argues, that other companies would do well to emulate.
Article
Everyone wants to work with team players. Check out the advertisements for employment opportunities and you will find “must be a team player” is high on most software engineering job requirements. This is the case even though software engineering is thought of as a solitary activity that attracts a large number of introverts. Nevertheless, most software-related jobs are not solitary and frequently require working with others in a team setting. How do individuals form into teams? The paper considers the stages of team development
Article
The author suggests project management concepts and techniques that can facilitate a successful initiation of new expert systems projects. The principle of communication, cooperation, and coordination is emphasized. The standard responsibility chart is presented as a mechanism for coordinating the efforts of the project personnel. The roles of domain experts, knowledge engineers, and programmers are discussed in the context of initiating and managing an expert systems projects. Specific recommendations to the practitioners for getting started are presented. The guidelines can be easily adapted for a customized procedure for any specific project situation
Article
Most professional degree programs for software engineering focus on solving today's problems with today's technologies. Carnegie Mellon's Master of Software Engineering program takes a different approach, preparing engineers to work with new science and technology throughout their careers and helping them become agents of change in the industry. The approach aims to cultivate future leaders in software engineering. It combines a long-term, mentored software development project with an unusual core curriculum that stresses broad-based models and problem-solving skills
Software Engineering for the 21st Century; a basis for rethinking the curriculum
  • Mary Shaw