Top PDF An Assessment between Software Development Life Cycle Models of Software Engineering

An Assessment between Software Development Life  Cycle Models of Software Engineering

An Assessment between Software Development Life Cycle Models of Software Engineering

This research deals with an essential and important subject in Digital world. It is related with the software managing processes that inspect the part of software development during the development models, which are called as software development life cycle. It shows five of the development models namely, waterfall, Iteration, V-shaped, spiral and Extreme programming. These models have advantages and disadvantages as well. So, the main objective of this research is to represent dissimilar models of software development and make a comparison among them to illustrate the features and defects of every model.
Mostrar mais

11 Ler mais

BIM FOR BUILDING SUSTAINABILITY ASSESSMENT - Development of a software tool for Rainwater Runoff mitigation

BIM FOR BUILDING SUSTAINABILITY ASSESSMENT - Development of a software tool for Rainwater Runoff mitigation

The first step in this process is to connect the created lines to a “List.Map” node after flattening the list containing them. In order to obtain the surfaces intercepted by these “rain lines” the node “Geometry.Intersect”, which is linked to the surfaces list, is used as a function. This way, by connecting the “List.Map” node to the “rain lines” and the “function” “Geometry.Intersect” containing the element surfaces, a cycle is created in which the “rain lines” try to intercept the created surfaces one by one. However, this means that even if a “rain line” cannot geometrically intercept an element, the process of trying to intercept it will be processed. This way, if an interception is found, a point is created, if not, the list stays empty. This results in a great burden for the software and, thereby, methods to speed this process were experimented. The most promising was the elimination, from the geometry list, of all the elements that could not possibly be further intercepted by any “rain line”. This was done by analysis the next “rain line” coordinates in the series and comparing it to the elements coordinates. However, although successful, the process of doing verifications such as the one previously stated took an even greater toll on the computer, slowing the software performance. Yet, it should be stressed that this methods were tried on medium sized models as the one presented in the case study and could have positive outcomes when used in bigger Revit models where optimization process have a greater impact. After acquiring the list of interceptions, in order to better perceive this procedure, small spheres are created in the topmost interceptions. To do so, two more functions are used: the first “Flattens” the list and the second retrieves the point with the highest Z coordinate in the same line or, in other words, the first interception with the topmost element. This is done by using the “Point.Z” and “MaximumItemByKey” nodes.
Mostrar mais

193 Ler mais

Analysis of the impact of test based development techniques (TDD, BDD, AND ATDD) to the software life cycle

Analysis of the impact of test based development techniques (TDD, BDD, AND ATDD) to the software life cycle

Abstract— Agile development embodies a distancing from traditional approaches, allowing an iterative development that easily adapts and proposes solutions to changing requirements of the clients. For this reason, the industry has recently adopted the use of its practices and techniques, e.g., Test-Driven Development (TDD), Behavior-Driven Development (BDD), amongst others. These techniques promise to improve the software quality and the productivity of the programmers; therefore, several experiments, especially regarding TDD, have been carried out within the academy and in industry. These show variant results (some of them with positive effects and others not so much). The main goal of this work is to verify the impact made by the TDD and BDD techniques in software development, analyzing their main promises regarding quality and productivity. We aim to conduct the experience in the academy, with a group of students from the Systems Engineering Degree of the Universidad Técnica del Norte, Ecuador. The students will receive training and appropriate education to improve knowledge about it, and we aspire to achieve interesting results concerning both quality and productivity. The challenge that it is also desirable, is to replicate the experiment in the industry or other adequate contexts.
Mostrar mais

126 Ler mais

Teaching Software Engineering: Problems and Suggestions

Teaching Software Engineering: Problems and Suggestions

The software development process and software life cycle usually introduces students to the waterfall model, iterative models (e.g. spiral model), agile model, extreme model and rational united process. The waterfall model is well defined and the differences between this model and other models are clear. However, the differences between the other models are not that clear and could be confusing. For example, it is difficult to explain and highlight rigid differences between the spiral and agile models. Both are incremental and iterative. Both work in order of risk. The difference may be in the scope. While the spiral focuses on big design from the beginning and is recommended for large projects, the agile focuses on one increment at a time and may work for small projects. That difference is not really sharp to require two names for almost the same model. It was going to be easier if agile was considered a special case of the spiral model. Also, it is not clear what is meant with big and small projects, this is proportional. If the course delves into the discussion of the Extreme Programming (XP) model / technique then more confusion is added to the course as follows: The PC magazine says about XP that “it is based on a formal set of rules about how one develops functionality such as defining a test before writing the code and never designing more than is needed to support the code that is written” and “XP is designed to steer the project correctly rather than concentrating on meeting target dates, which are often unrealistic in this business” [12]. But is not that what software developers need? Just to design what is needed for coding and to steer the project correctly? If so, then why the need for other models? Even more, TechTarget [13] claims that: “Kent Beck, author of Extreme Programming Explained: Embrace Change, developed the XP concept. According to Beck, code comes first in XP”. But this contradicts what we have been teaching students that software engineering is concerned with the careful analysis and design so that the coding phase goes smoothly. Now, we teach them that code comes first. Furthermore, according to Don Wells [14], XP “has already been proven to be very successful at many companies of all different sizes and industries worldwide”. Again, if XP is the perfect model for all different sizes and industries then why trying other models? On the other hand, the some suggest that XP is waning [15]. While most literature suggests that XP is a special case of agile, Extreme Programming (XP) happens to be the most well- known of agile methodologies [16]; others suggest that agile itself is only an implementation of the spiral model [17]. The point here is that there is no consensus on the relationship between the different models and there is no
Mostrar mais

4 Ler mais

Interaction between Software Engineering and Artificial Intelligence- A Review

Interaction between Software Engineering and Artificial Intelligence- A Review

The software engineering is the systematic and scientific approach to develop, operate, maintain and to retire the software product. Although Software engineering is a very discipline and systematic approach but it has some limitation and problems. Firstly, it is very difficult to simulate the human mind or behavior with the help of software engineering. Secondly, the computer consciousness is not possible in Software engineering. Thirdly, it is not possible to solve NP’s Complete Problem quickly i.e. in polynomial time. Fourthly, mostly process models in software engineering use the sequential approach and fixed phases so software product is not flexible in nature. Furthermore, the real time software is very difficult to engineer with the help of Software engineering. Lastly, since software is so cheap to build so formal engineering validation methods are not of much use in real world software development. Software development is still more a craft than an engineering discipline because of lack of rigor in critical processes of validating and improving a design.
Mostrar mais

6 Ler mais

EFFECTIVE INDEPENDENT QUALITY ASSESSMENT  USING IV&V

EFFECTIVE INDEPENDENT QUALITY ASSESSMENT USING IV&V

The economic benefit could be realized from IV&V when errors are found earlier in the life cycle than they might otherwise have been found during testing phase or before delivery. Boehm estimated that the cost to fix an error for large projects increases by 20% if detected at phase 2, 25% at phase 3, 75% at phase 4, and 200% at phase 5 relative to the cost to fix the error at phase 1 as shown figure 3. There is a need for IT organisations today to evaluate ways and means of optimizing verification & validation costs. Independent Verification Validation Group is a V&V Centre of Excellence formed by a group of experienced testers, DE or SMEs, Technical architects, Auditors, & software experts. Thus an IV&V group being an extremely knowledgeable, responsive, and professional support team gives companies the ability to reduce testing costs while increasing its efficiency. Highest software quality is achieved by taking advantage of a global pool of talent, greater expertise, continuous investment in new methodologies, process improvements and by providing active quality assurance throughout the development life cycle of the project and independent verification & validation services. In order to achieve, the following services are required in all the phases of the project and ultimately this means that they can improve the quality of their software, reduce the time it takes to bring them to market and improve their brand image.
Mostrar mais

11 Ler mais

Some Observations On Open Source Software Development On Software Engineering Perspectives

Some Observations On Open Source Software Development On Software Engineering Perspectives

Despite the fact that no standard development life cycle exists in open source development, OSSD is getting success as development methodology. Open source software progress has modified the method of software development, updating, and maintenance. OSS is becoming famous in the field of software development and million of people are getting the benefit from this type of development. Different views on development model of open source software are suggested by the various researchers. This paper has analyzed the nature and characteristics of the OSS development life cycle model and different views of researchers. It has been argued that OSS development violating the principles of software engineering. A theoretical study has also been made to find out the validity of this argument by comparing OSS development model with the software engineering development models as portrayed in the software engineering books. It can not be said that Open source is completely violating the software engineering principles. Consciously or unconsciously some principles of conventional development is followed in OSS development. This is particularly true in case of large OSS projects. To make the team work possible large successful projects do define and enforce some rules. In small OSS development projects with fewer developers, development process may not be well defined. But it can not be said that in OSS development projects software engineering is done poorly. It is instead a different approach to the development of software systems.
Mostrar mais

13 Ler mais

REQUIREMENTS FOR SYSTEMS DEVELOPMENT LIFE CYCLE MODELS FOR LARGE-SCALE DEFENSE SYSTEMS

REQUIREMENTS FOR SYSTEMS DEVELOPMENT LIFE CYCLE MODELS FOR LARGE-SCALE DEFENSE SYSTEMS

LSDSs have long life cycles. The costs are so high and schedules are so long that replacing LSDSs in short periods is economically unsustainable. Defense systems such as ships, military aircrafts, tanks, missiles etc. are expected to be in service for at least 30-40 years. Currently, the F-35 is planned to have a 50-years long life cycle [13]. Naturally, there are upgrade programs over the years to prolong the service life in addition to overhauls and maintenance. Supportability, maintainability, and evolvability are among the quality concerns for systems having long life cycles. An important challenge results from the difference in the rate of evolution between hardware and software. Hardware is evolving much faster than software. Acquiring legacy hardware is expensive if possible. Vendors quickly adapt new manufacturing technologies to stay competitive.
Mostrar mais

8 Ler mais

Comparing General-Purpose and Domain-Specific Languages: An Empirical Study

Comparing General-Purpose and Domain-Specific Languages: An Empirical Study

GPLs are perfectly established in the life-cycle of software development. Their characteristics are widely spread amongst software engineers. On the other hand, the integration of DSLs into the software development life-cycle is not so smooth [5]. However, many DSL studies during the last ten years [1, 3, 6 – 12], reveal the importance of these languages in software engineering. The concentration on a definition of notation that would only express concepts of a single application domain, brings the possibility to sharpen the edges of a language, which makes it more and more efficient in various directions, which are briefly elaborated below. One of these directions is the efficiency of being read and learned by the domain experts [13]. To use DSLs that allow focusing on the problem and not on the solution, can be profitable at earlier stages of the software life-cycle as well [14], such as requirements analysis and management [15]. Moreover, there is the possibility of integrating domain experts in the later stages of the software development life-cycle [2, 16]. Since the usage of GPLs requires good programming skills, the domain- experts, who are not proficient in that area, can do very little on this matter. However, with the use of DSLs, they can concentrate on the programming tasks and they can even do programming. Another benefit of DSLs is that software maintenance is simplified [2], since DSLs provide self- documentation that avoids the search for documentation resources, which may be unavailable in the first place. DSLs are also claimed to be a good approach for software reuse [17]. In this context, not only the pieces of software are reused, but also the knowledge embodied in the language. Another facet of efficiency can be observed in the tools that give support to a language. Their processors, for instance, can be improved to offer better results, as the domain is restricted and the knowledge is centralized [18, 19]. All together, these aspects diminish the costs of engineering and reengineering, and increase reliability and maintainability of the software constructed with DSLs [20].
Mostrar mais

18 Ler mais

A Comparison Between Five Models Of Software Engineering

A Comparison Between Five Models Of Software Engineering

increased recently which results in the difficulty of enumerating such companies. During the previous four decades, software has been developed from a tool used for analyzing information or solving a problem to a product in itself. However, the early programming stages have created a number of problems turning software an obstacle to software development particularly those relying on computers. Software consists of documents and programs that contain a collection that has been established to be a part of software engineering procedures. Moreover, the aim of software engineering is to create a suitable work that construct programs of high quality.
Mostrar mais

8 Ler mais

Cloud Services for Collaborative Web Based Project Management System

Cloud Services for Collaborative Web Based Project Management System

Cloud is designed to distribute IT resources in a cost- effective and nimble way. Consumption-driven cloud commerce moves an organization’s focus from CAPEX (capital expenditure), which typically isn’t fully utilized, to smaller, incremental and variable OPEX (operating expenditure) organizations may overprovision storage bursts in an attempt to meet capacity planning or even buy resources because budget is available. These organizational efforts result in a lot of idle capacity and a longer time to realize a return on assets (ROA).Cloud computing offers dramatic increases in agility and efficiency—mandatory innovation to ensure speedy, cost- effective delivery of products and services.
Mostrar mais

5 Ler mais

Master’s thesis in Software Engineering

Master’s thesis in Software Engineering

A   second  focused  topic  addressed  in  this  thesis  is  the  idea  of  sharing  awareness  between   users  who  own  a  mobile  device.  Research  in  the  area  of  novel  communication  technologies  is high profile, potentially high impact and broad in scope. Key social issues such  as   availability,  interruptibility,  information  (and  interaction)  overload  and  privacy  have  attracted   considerable  attention  in  diverse  settings.  For  example,  the  Connector  system  [9]  adjusts  availability settings on a smart phone using a context model derived from augmented  smart  rooms populated with audio and video recording systems capable of performing speech  and   face  recognition.  By  modeling  and  recording  users’  activities,  tasks  and  social  context,  Connector  seeks to automatically configure the response of their mobile phone to incoming  calls   and  text  messages  from  different  sources.  A  motivating  example  is  that,  whilst  in  a  meeting,  calls will only be accepted from individuals with VIP status. 
Mostrar mais

187 Ler mais

J. Braz. Comp. Soc.  vol.12 número3

J. Braz. Comp. Soc. vol.12 número3

(ESELAW) in its fourth year aims at the improvement of the field among Latin American researchers by consolidat- ing a research network. The field also has a flagship journal, Empirical Software Engineering: An International Journal, published by Springer. The journal is going to its 12 th vol-

2 Ler mais

Resonance: development, use, and evaluation of an educational software.

Resonance: development, use, and evaluation of an educational software.

As concordâncias com as afirmações apresentadas variaram de 8,4 a 9,3 entre os estudantes (Tabela 1). Portanto, podemos conside- rar as afirmações como verdadeiras, por estarem mais próximas da concordância plena (10) do que do ponto neutro (5), e muito mais distante da não concordância (zero). Sendo assim, com boa exatidão pode-se afirmar que, do ponto de vista estético, a interface gráfica é agradável (afirmação 1, concordância 8,6). A forma e o conteúdo do aplicativo despertam a curiosidade e o interesse do usuário (afirmação 2, concordância 8,4), apresentando estruturas e animações familiares e representativas (afirmação 3, concordância 9,1), tornando o software interativo e de fácil utilização (afirmação 4, concordância 9,1). Além disso, o software contribui para o aprendizado dos conceitos relacio- nados à ressonância (afirmação 5, concordância 9,2), uma vez que sua utilização pelo professor em aula facilitou o entendimento do conteúdo abordado pelos estudantes (afirmação 6, concordância 8,8), configurando o software como uma ferramenta didática importante para complementar os conteúdos apresentados nos livros impressos (afirmação 7, concordância 9,3).
Mostrar mais

4 Ler mais

A systematic comparison of roundtrip software engineering approaches

A systematic comparison of roundtrip software engineering approaches

Such views can be created, resized, moved and deleted by dragging them to the desired position. Papyrus is highly customizable and allows you to add new diagram types developed using any Eclipse compatible technology (GEF, GMF, EMF and others). This is achieved through a plug-in mechanism of all diagrams (Eclipse Papyrus Project, 2015). When designing a UML2 profile, you may need to customize one or more existing UML2 diagram editors. For this purpose, Papyrus supports customization of existing publishers, with the added ability to extend these customizations by adding relevant new tools to the stereotypes defined in the UML profile. For example, the SysML Requirements Diagram Editor is designed as a customization of the UML2 class diagram editor with additional features for direct manipulation of all concepts defined in the SysML Requirements Diagram. Finally, by embedding a profile in an Eclipse plug-in, a designer can also provide a specific property view that will simplify manipulation of stereotypes and their related properties. The outline editor and tool menu can also be customized to address domain-specific concerns appropriate to the profile (F. Bordeleau). It was developed by the Model-driven Engineering Laboratory for Embedded Systems (LISE), which is part of France's Alternative Energy and Atomic Energy (CEA List). It supports software design by providing JAVA or C ++ code generation from models, including real-time systems. This happens on two different levels of abstraction. Support for component-based models. In this case, generation starts from a model that includes the definition of software components, hardware nodes, and deployment information. The latter consists of a definition of the components and nodes and an allocation between them. Code generation is done by a sequence of transformation steps. The model takes care of some specific aspects of the properties based on. Therefore, Papyrus currently supports eight of the diagrams described in the specification: Class Diagram, Diagram Components, Activity Diagram, State Machine Diagram, Use Case Diagram, Sequence Diagram.
Mostrar mais

99 Ler mais

Energy Life-Cycle Assessment of Fruit Products

Energy Life-Cycle Assessment of Fruit Products

Pruning operation of fruit trees requires several tools, including small and large shears, pneumatic shears, knives, saws, axes, scythes, stairs, among others [20]. Commonly, pruning is performed using hydra-ladders connected to an air compressor. A working tractor is constantly required to power the air compressor for using hydra-ladders and pneumatic shears, this requirement generates high costs due to fuel consumption. However, most frequent peach tree pruning technique adopted in the region is the vase (open center) systems, this leads to small trees. Thus, pruning can be performed without the use of hydra-ladders and pneumatic shears. In order to reduce the energy consumption during the pruning operation, electric shears linked to a portable battery carried in a backpack on the operator could replace the current method. Makita shears [39], have a performance of 10,000 cuts load cycle, the equivalent to 7 work hours. This operation reaches an energy consumption of approximately 0.826 kW · ha −1 , the equivalent to 9.85 MJ, considering 10 shear and a pruning operation time (hours) per hectare. Therefore, energy consumption during peach orchard pruning operation will be much lower by using electric shears compared to pneumatic shear.
Mostrar mais

12 Ler mais

Software Engineering: A Practitioner’s Approach, 7e

Software Engineering: A Practitioner’s Approach, 7e

n Use effective technical reviews as a filter prior to testing n Conduct technical reviews to assess the test strategy.. and test cases themselves.[r]

33 Ler mais

Empirical Studies in Software Engineering

Empirical Studies in Software Engineering

Mapping studies are designed to find and classify primary studies on a specific subject area. They have coarse-grained research questions such as: “What we know about topic x?” and can be used to identify the available literature before performing conventional systematic literature reviews. They use the same methods for searching and extracting data as conventional systematic literature reviews, but most rely on the tabulation of primary studies in specific categories. In addition, some mapping studies are more concerned about how academics conduct research in software engineering rather than what is known about a given topic software engineering. The study reported in this paper is a mapping study.
Mostrar mais

20 Ler mais

Software Engineering: A Practitioner’s Approach, 7e

Software Engineering: A Practitioner’s Approach, 7e

n Um desenho deve levar a estruturas de dados que são apropriadas para as.. classes que serão implementadas e se baseiam em padrões de dados reconhecidos.[r]

30 Ler mais

Software Engineering: A Practitioner’s Approach, 7e

Software Engineering: A Practitioner’s Approach, 7e

These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e.. (McGraw-Hill, 2009)?[r]

33 Ler mais

Show all 10000 documents...