16 research outputs found

    The Development of a Graduate Curriculum for Software Assurance

    Get PDF
    One of our challenges as educators is timely incorporation of research into curricula that can be adopted by universities toultimately improve software engineering practice. In this paper, we describe the work of the Master of Software Assurancecurriculum project. This includes our sources, process, products, adoption strategies, and early adoption experiences. Theproject used research results, prior curricula, and documented bodies of knowledge to develop a new curriculum. We arenow working with early adopters and employing a number of transition mechanisms as part of our strategy to furtheradoption in this critical area

    Undergraduate Curriculum in Software Engineering

    Get PDF

    Graduate Curricula in Software Engineering and Software Assurance: Need and Recommendations

    Get PDF
    In discussions about the development and use of computer systems and software products, the term “professional software engineer” is used repeatedly. In the last two decades there has been significant effort devoted to enhancing and advancing the state of professional software engineering (SwE) – new software engineering processes, methods, tools, and practices; creation of a software engineering body of knowledge [1]; development of a code of ethics and professional conduct [2], and software certification and licensing programs [3] . In 1989 the Software Engineering Institute (SEI) of Carnegie Mellon University published a landmark report on graduate education in software engineering [4]. The guidelines in that report were used by several universities in establishing graduate software engineering degree programs that helped address the problem of improving professional software engineering. Since then, software’s scale, complexity, and criticality have accelerated; yet, until recently, no significant effort has been made to revisit and update the original SEI guidelines. This paper discusses two related efforts to provide guidance about improving professional software engineering through graduate education: a project which produced the Graduate Software Engineering 2009 (GSwE2009): Curriculum Guidelines for Graduate Degree Programs in Software Engineering [5] and a current SEI project which is developing a Master of Software Assurance Reference Curriculum (MSwA2010)

    A study at Masters Level Training in Software Engineering

    Get PDF
    Sponsored by the Department of Defense in the United States was formed an alliance among professionals from the academy, industry and government to design and structure a new model curriculum for Masters Programs in Software Engineering. Before starting this work was conducted at study to 28 of existing programs to determine the level of training in these masters in the country and the world. This article presents the results of that study

    An Alliance-Based Term Project in Software Quality Courses: a Lesson Learned

    Get PDF
    Software testing education has become important in the field of software engineering education. In the previous software quality assurance course, students were asked to form teams to complete a term project. By working on term projects, students can learn programming skills and test skills in a practical way. However, from the experience of the last 3 years, we found that students only did unit testing and system performance testing well but did poorly in integration testing. In addition, students do not yet have the concept of system decomposition and integration, even though it is important during software development. In this paper we report our improvements to software testing course design - an alliance-based approach. In the term project, students are organized into teams and many teams are grouped into alliances. Each alliance has a team of masters building game platforms for others. The master team must define the application interface to interact with other gaming teams, and they must perform integration tests based on the defined interface. In this paper we report our experiences and student feedback on the educational approach

    Formal or informal, practical or impractical: towards integrating formal methods with informal practices in software engineering education

    Get PDF
    Two conflicting schools of thought have been dominating software engineering education. One school stresses on the popular software development methodologies, but horror stories on poorly designed systems are not uncommon. The other school advocates formal methods, but most practitioners regard them as impractical. We recommend that we should bridge the gap between the formal and informal by bringing theory to existing practice. The formalism should be used as a working tool behind popular software development methodologies. Students should not be trained as craftsmen who consider software development as an art and learn only from past mistakes. Nor should they be trained as mathematicians who are more comfortable with theory than applications. Software engineers must be educated as real 'engineers' who are competent with industrial practices as well as the mathematical foundation directly supporting them.postprin

    A Process-Based Analysis Of Object-Oriented System Analysis And Design

    Get PDF
    System Analysis and Design (SAND), is critical for any system development project.  Most new systems are built using Object-Oriented System Analysis and Design (OOSAND).  This paper critically examined and analyzed the OOSAND methodology to discover the underlying principles and rationales based on the inherent processes.  There are a few past studies that had examined the factors influencing the processes but few had examined the processes themselves.  This paper focuses on the SAND processes and examines the pragmatic issues concerning them.  The significance of this research is that the knowledge gained in this exercise will provide systems analyst/programmers a better heuristics to migrate legacy systems to the new object-oriented system and enable higher analyst/programmer efficiency and effectiveness in conducting SAND

    Development of a Master of Software Assurance Reference Curriculum

    Get PDF
    The Next Generation Air Traffic Management system (NextGen) is a blueprint of the future National Airspace System. Supporting NextGen is a nation-wide Aviation Simulation Network (ASN), which allows integration of a variety of real-time simulations to facilitate development and validation of the NextGen software by simulating a wide range of operational scenarios. The ASN system is an environment, including both simulated and human-in-the-loop real-life components (pilots and air traffic controllers).Real Time Distributed Simulation (RTDS) developed at Embry-Riddle Aeronautical University, a suite of applications providing low and medium fidelity en-route simulation capabilities, is one of the simulations contributing to the ASN. To support the interconnectivity with the ASN, we designed and implemented a dedicated gateway acting as an intermediary, providing logic for two-way communication and transfer messages between RTDS and ASN and storage for the exchanged data. It has been necessary to develop and analyze safety/security requirements for the gateway software based on analysis of system assets, hazards, threats and attacks related to ultimate real-life future implementation. Due to the nature of the system, the focus was placed on communication security and the related safety of the impacted aircraft in the simulation scenario. To support development of safety/security requirements, a well-established fault tree analysis technique was used. This fault tree model-based analysis, supported by a commercial tool, was a foundation to propose mitigations assuring the gateway system safety and security

    IS 2002 Model Curriculum and Guidelines for Undergraduate Degree Programs in Information Systems

    Get PDF
    This article contains the official text of the IS 2002 Model Curriculum for Undergraduate Degree Programs in Information Systems as approved by The Association for Computing Machinery, The Association for Information Systems, and The Association of Information Technology Professionals. It is presented in its original form
    corecore