Lesson Archives

  1. ABSTRACT  Modernization of legacy systems requires the existence of technical frameworks for information integration and tool interoperability that allow managing new platform technologies, design techniques and processes. MDA (Model Driven Architecture), adopted by the OMG (Object Management Group), is aligned with this requirement. Reverse engineering techniques play a crucial role in system modernization. In light of these issues, this article describes a framework to reverse engineering MDA models from object oriented code. This framework distinguishes three different abstraction levels linked to models, metamodels and formal specifications. At model level, transformations are based on static and dynamic analysis. At metamodel level, transformations are specified as OCL (Object Constraint Language) contracts between MOF (Meta Object Facility) metamodels which control the consistency of these transformations. The level of formal specification includes algebraic specifications of MOF metamodels and metamodel-based transformations. This article shows how to reverse engineering use case diagrams from Java code in the MDA context focusing on transformations at model and metamodel levels. We validate our approach by using Eclipse Modeling Framework, Ecore metamodels and ATL (Atlas Transformation Language).

  2. ABSTRACT Information Resources Planning and Management (IRPM) is an evolving discipline that helps managers assess, allocate and exploit their information assets for business development. It draws on the techniques of information science (libraries) and information systems (IT related) as well as the process of business management. In this paper, we propose an event-driven interactive model IRPM to effectively provide managers with valuable information and background processes to keep, plan and manage the valuable information. The structure of the proposed model is introduced, the Analytical Hierarchy Process (AHP)-based information resource planning and allocation is described, components and processes of the model and interactions between them are presented, and the benefits and obstacles of the model are analyzed.

  3. ABSTRACT The role of metrics in software quality is well-recognized; however, software metrics are yet to be standardized and integrated into development practices across the software industry. Literature reports indicate that software companies with less than 50 employees may represent up to 85% of the software organizations in several countries, including the United States. While process, project, and product metrics share a common goal of contributing to software quality and reliability, utilization of these metrics has been minimal. While the well-known process models may not be ideal in a relatively small setting, some of the large process models are being scaled down while, simultaneously, new models are being developed specifically for smaller software organizations. Software metrics have been studied for years, and there are many options available for metrics utilization, either within or outside of a process improvement framework, regardless of the size of the setting. Under this work, case studies and industrial reports on the use of metrics in software organizations were gathered and analyzed. This work examines the practices of metrics in the software industry with emphasis on small organizations, explores the challenges and benefits of using software metrics in small organizations, and outlines a practical framework based on the Goal/Question/Metric paradigm for instituting metrics programs in small software organizations.

  4. ABSTRACT Unlike Hoare-style program verification, functional program verification supports forward reasoning by viewing a program as a mathematical function from one program state to another and proving its correctness by essentially comparing two mathematical functions, the function computed by the program and its specification. Since it requires a minimal mathematical background and reflects the way that programmers reason about the correctness of a program informally, it can be taught and practiced effectively. However, there is no formal notation supporting the functional program verification. In this article, we describe a formal notation for writing functional program specifications for Java programs. The notation, called CleanJava, is based on the Java expression syntax and is extended with a mathematical toolkit consisting of sets and sequences. The vocabulary of CleanJava can also be enriched by introducing user-specified definitions such as user-defined mathematical functions and specification-only methods. We believe that CleanJava is a good notation for writing functional specifications and expect it to promote the use of functional program verifications by being able to specify a wide range of Java programs.

  5. ABSTRACT Accurate software effort estimates are critical to measure for developers, leaders, project managers. Underestimating the costs may result in management approving proposed systems which can exceed their budgets, with underdeveloped functions and poor quality, and failure to complete on time. Various models have been derived to calculate the effort of large number of completed software projects from various organizations and applications to explore how project sizes mapped into project effort. But, still there is a need to prediction accuracy of the models. Day to day there is rapid change and growth to get new techniques and model to estimate the accurate size, effort and cost of software but still there is lack of accuracy to meet exactly the accurate effort as per company norms and standards. A BPO Company takes up a process of another company. The Company which is handling the incoming calls of customers, queries, solution, services through software is known as IVR software. In this paper the author has proposed a model named “VRS Model” to estimate the accurate effort and schedule of IVR software applications. This model will be helpful for project managers, developers and customers to estimate accurate effort and schedule of only IVR Projects.

  6. ABSTRACT Understanding quality attributes relationships impersonates a vital role in sustaining a sufficient level of quality to a software system. Furthermore, calibrating the relationships between system's quality attributes will not only affect its quality but also may reduce the development cost. However, this paper introduces a framework to explore the nature of the relationships between different quality attributes at a low level with the aid of architectural strategies (i.e. tactics). Additionally, this framework enables the software architects to calibrate and adjust the quality attributes relationships using two pieces of information, that is, tactics and scenarios. Furthermore, the developed framework enables software architects to have a rough measurement of the strength of the relationships between the quality attributes.

  7. ABSTRACT Agile practitioners have expressed concern over their inability to correctly estimate costs associated with Agile web software development. This concern has become even more critical as costs associated with development continue to increase. As a result, significant research attention is now intended for gaining a better understanding of the web based projects in context with Agile software-development process as well as constructing and evaluating calibrated software cost estimating tools. This paper discussed the necessity for new metrics and model to fast predict the size, effort and duration for agile based web development projects. The method called web estimation using COCOMOII for Agile methods AGILEMOW, addresses a need to get effort estimation in a limited period using limited information. In contrast with other existing methods, AGILEMOW uses agile characteristics, raw historical information about development capability and high granularity knowledge about the web system to be developed. This research focuses on development of effort estimation model for agile web projects. Creation and use of the model is enlightened in detail. The model was calibrated using the empirical data collected from seven completed web projects. The experimental results prove that model has good estimation accuracy in terms of effort and MMRE. The suggested method/model is simple and particularly appropriate for small or medium size web based systems developed by making use of agile methodologies.

  8. ABSTRACT  Software security estimation is the valuable technique of understanding for improving, guiding and controlling security integration at design phase. It is required to assess performance and degree of protection using security attributes including confidentiality, integrity and availability. The assessment of security using model is more appropriate and its validation signifies the valid impact. The security quantification model is developed by multiple regression technique using design complexity as a key factor. The applied statistical analysis on this study concludes its statistical significance.

  9. ABSTRACT Test case prioritization techniques improve the cost-effectiveness of regression testing and provide several benefits such as earlier detection of faults and earlier feedback to testers. This paper provides an overview of existing research in the area of test case prioritization and reviews 70 journal articles and conference papers. We show the state of the research and a new classification schema for test case prioritization techniques. Existing research is discussed with respect to the test case prioritization approaches and the performance evaluation parameter criteria used in the studies.

  10. ABSTRACT Service Oriented Software Engineering (SOSE) is an emerging field for developing software using web services. One of the main tasks of a Requirement Engineer in SOSE is matchmaking between requirements and available services. Published literature indicates that Requirements Engineering (RE) in SOSE is facing different challenges. In this study, we report the results of an online survey conducted with practitioners and the researchers working on service oriented projects. The aim is to get an insight about the issues and challenges faced in SOSE during requirements engineering. The results show an interesting pattern of how the researchers and practitioners have differing views on reported challenges. The difference in opinion is mostly because SOSE is a new field and most of its concepts are not fully understood and appreciated by designers and developers, resulting in a poor implementation of the SOSE concepts.