Posts

Showing posts from December 6, 2016

Software Risk Management:

Software Risk Management: Since there could be various risks associated with the software development projects, the key to identify and manage those risks is to know about the concepts of software risk management. Many concepts about software risk management could be identified but the most important are risk index, risk analysis, and risk assessment (Hoodat, H. &Rashidi, H.). Risk Index : Generally risks are categorized into two factors namely impact of risk events and probability of occurrence. RiskAnalysis : There are quite different types of risk analysis that can be used. Basically, risk analysis is used to identify the high risk elements of a project in software engineering. RiskAssessment : Risk assessment is another important case that integrates risk management and risk analysis. Risk Classification: The key purpose of classifying risk is to get a collective viewpoint on a group of factors · SOFTWARE REQUIREMENT RISKS -.Lack of

Software Configuration Management

Software Configuration management is a set of activities carried out for identfying, organising and controlling changes throughout the lifecycle of computer software. During the development of software change must be managed and controlled in order to improve quality and reduce error. Hence Software Configuration Management is a quality assurance activity that is applied throughout the software process. Need for SCM The software configuration management is concerned with managing the changes in the evolving software. If the changes are not controlled at all then this stream of uncontrolled change can cause the well-running software project into chaos. Hence it is essential to perform following activities - · Identify these changes · Control the changes · Ensure that the changes are properly implemented and · Report these changes to others. The software configuration management may be seen as part of quality management process. B

The process of Delphi method

PROCESS: · The Delphi technique comprises several steps involving participants who may or may not meet face to face. · The participants (or panel) might be employees of a specific company conducting a Delphi project or experts selected from the outside for their indepth knowledge of a given academic discipline or manufacturing process. ADVANTAGE: There are several advantages to the Delphi technique. · One of the most significant is its versatility. The technique can be used in a wide range of environments, e.g., government planning, business and industry predictions, volunteer group decisions. · Another important advantage lies in the area of expenses. · For example, the Delphi technique saves corporations money in travel expenses. · They do not have to gather participants from several points of the globe in one place to resolve a problem or predict the future, yet they still can generate relevant ideas from the people best suited

Integration framework for CASE tool.

A integration framework for CASE (computer-aided software engineering) environments identifies five sets of services that such an environment should provide The five levels of service in integration framework are: · Data repository services These provide facilities for the storage and management of data items and their relationships. · Data integration services These provide facilities for managing groups or the establishment of relationships between them. These services and data repository services are the basis of data integration in the environment. · Task management services These provide facilities for the definition and enactment of process models. They support process integration. · Message services These provide facilities for tool-tool, environment-tool and environment-environment communications. They support control integration. · User interface services These provide facilities for user interface development. They support presentati

The structure of a software team

General Team Roles Requirements Analyst · Solicitation and elaboration of stakeholder needs and requirements. Technical Writer · Providing early feedback to the core and extended teams about e.g. desirable features. · Creating closer and more productive relationships with the various stakeholder communities (through e.g. creating tutorials, reference manuals, technical overviews, brochures, video, audio, etc.) Designer · Finding solutions to known requirements. · Exploring the requirement space. Coder · Advising on economic feasibility of implementing designs / requirements in available programming languages. · Implementing i.e. user stories – in whatever language is most suited to the problem at hand (c.f. Polyglot Programming).

The taxonomy of CASE Tools

CASE Tool Taxonomy CASE tools can be classified by · by function, · by user type (e.g. manager, tester), or · by stage in SE process (e.g. requirements, test) The following taxonomy is classified by function. Business Information Tools model business information flow. The tools represent business data object and model their flow. Network tools could be modified to yield the same functionality. Process Management Tools model processes. You have to understand the process in order to model it. The tools help you capture process. This is a key component of TQI. Project Planning Tools help plan and schedule projects. Examples are PERT and CPM. Finding parallelismand eliminating bottlenecks assist in streamlining projects. Risk Analysis Tools helps build a risk table from the schedule outlining the risk each component of the production process and categorizing the risks as catastrophic, critical, marginal, or negligible. A cost is associated with eac

It is proposed to evaluate various case tools available in the market

· Diagram tools example , Flow Chart Maker tool for creating state-of-the-art flowcharts. · Process Modeling Tools example, EPF Composer · Project Management Tools example , Creative Pro Office, Trac Project, Basecamp. · Documentation Tools example , Doxygen, DrExplain, Adobe RoboHelp for documentation. · Analysis Tools example , Accept 360, Accompa, CaseComplete for requirement analysis, Visible Analyst for total analysis. · Design Tools example , Animated Software Design · Configuration Management Tools example , Fossil, Git, Accu REV. · Programming Tools example , Cscope to search code in C, Eclipse. · Prototyping Tools example, Serena prototype composer, Mockup Builder.

The Role of the Repository in I-CASE

The repository for an I-CASE environment is the set of mechanisms and data structures that achieve data/tool and data/data integration. It provides the obvious functions of a database management system, but in addition, the repository performs or precipitates the following functions : • Data integrity includes functions to validate entries to the repository, ensure consistency among related objects, and automatically perform "cascading" modifications when a change to one object demands some change to objects related to it. • Information sharing provides a mechanism for sharing information among multiple developers and between multiple tools, manages and controls multiuser access to data and locks or unlocks objects so that changes are not inadvertently overlaid on one another. • Data/tool integration establishes a data model that can be accessed by all tools in the I-CASE environment, controls access to the data, and performs appropriate co

The COCOMO model

· COCOMO             COCOMO stands for COnstructiveCOstMOdel, developed by Barry W. Boehm. It divides the software product into three categories of software: organic, semi-detached and embedded. There are three levels in the COCOMO hierarchy: Basic COCOMO :             Computes software development effort and cost as a function of program size expressed in estimated DSIs. There are three modes within Basic COCOMO: Organic Mode:               Development projects typically are uncomplicated and involve small experienced teams. The planned software is not considered innovative and requires a relatively small amount of DSIs (typically under 50,000). Semidetached Mode :             Development projects typically are more complicated than in Organic Mode and involve teams of people with mixed levels of experience. The software requires no more than 300,000 DSIs. The project has characteristics of both projects for Organic Mode and projects for Embedded Mode.

The frequently used metrics

· Size Metrics               LOC (Lines of Code), mostly calculated in thousands of delivered source code lines, denoted as KLOC.Function Point Count is measure of the functionality provided by the software. Function Point count defines the size of functional aspect of software. · Complexity Metrics –             McCabe’s Cyclomatic complexity quantifies the upper bound of the number of independent paths in a program, which is perceived as complexity of the program or its modules. It is represented in terms of graph theory concepts by using control flow graph . · Quality Metrics –               Defects, their types and causes, consequence, intensity of severity and their implications define the quality of product. The number of defects found in development process and number of defects reported by the client after the product is installed or delivered at client-end, define quality of product. · Process Metrics –             In various phases of SDLC, the methods a

The various software cost estimation techniques

· Cost estimation This might be considered as the most difficult of all because it depends on more elements than any of the previous ones. For estimating project cost, it is required to consider - · Size of software · Software quality · Hardware · Additional software or tools, licenses etc. · Skilled personnel with task-specific skills · Travel involved · Communication · Training and support For an effective management accurate estimation of various measures is a must. With correct estimation managers can manage and control the project more efficiently and effectively. · COCOMO COCOMO stands for COnstructiveCOstMOdel, developed by Barry W. Boehm. It divides the software product into three categories of software: organic, semi-detached and embedded.