Spelling suggestions: "subject:"[een] SOFTWARE DESIGN"" "subject:"[enn] SOFTWARE DESIGN""
81 |
The traceable lifecycle modelNadon, Robert Gerard 01 August 2011 (has links)
Software systems today face many challenges that were not even imagined decades prior. Challenges including the need to evolve at a very high rate, lifecycle phase drift or erosion, inability to prevent the butterfly effect where the slightest change causes unimaginable side effects throughout the system, lack of discipline to define metrics and use measurement to drive operations, and no "silver bullet" or single solution to solve all the problems of every domain, just to name a few. This is not to say that the issues stated above are the only problems. In fact, it would be impossible to list all possible problems--software itself is infinitely flexible bounded only by the human imagination. These are just a portion of the primary challenges today's software engineer faces. There have been attempts throughout the history of software to resolve each one of these challenges. There have been those who tried to tackle them individually, simultaneously, as well as various combinations of them at one time. One such method was to define and encapsulate the various phases within software, which has come to be called a software lifecycle or lifecycle model. Another area of recent research has lead to the hypothesis that many of these challenges can be resolved or at least facilitated through proper traceability methods. Virtually none of today's software components are completely derived from scratch. Rather, code reuse and software evolution become a large portion of the software engineer's duties. As Vance Hilderman at HighRely puts it, "Research has shown that proper traceability is vital. For high quality and safety-critical engineering development efforts however, traceability is a cornerstone not just for achieving success, but to proving it as well." So if software is not derived from scratch, having the traceability to know about its origination is invaluable. Given today's struggles, what is in store for the future software engineer? This paper is an attempt to quantify and answer (or at least project a possibility) that involves a new mindset and a new lifecycle model or structure change that may assist in tackling some of the above referenced issues. / text
|
82 |
Diretrizes para desenvolvimento de linhas de produtos de software com base em Domain-Driven Design e métodos ágeis / Guidelines for developing software product lines based on Domain-Driven Design and agile methods.Otávio Augusto Cardoso Macedo 20 February 2009 (has links)
Linhas de produtos de software (LPS) são coleções de sistemas que compartilham características comuns, desenvolvidas de forma sistemática a partir de um conjunto comum de ativos centrais. Dentre as técnicas propostas por vários autores para o desenvolvimento de LPS, dois padrões podem ser observados: o processo de desenvolvimento geralmente é sequencial e o foco do projeto (design) costuma estar em interesses técnicos, como alocação de componentes e separação em subsistemas, e não em um modelo de domínio. Embora essas práticas sejam reportadas como bem-sucedidas, um outro paradigma de desenvolvimento, baseado em métodos ágeis e em um conjunto de princípios de projeto conhecido como domain-driven design, é apresentado neste trabalho e pode produzir resultados mais satisfatórios, comparados aos métodos tradicionais. Essa hipótese é sustentada por comparações entre padrões de modelagem e por um estudo de caso feito neste trabalho / Software product lines (SPL) are collections of systems that have common features. Those systems are systematically developed from a common set of core assets. Two patterns outstand among the various techniques proposed by several authors for developing software product lines: the development process is generally sequential and the primary design concerns deal with technical issues, such as component allocation and system partitioning (into subsystems). The importance of a domain model is often neglected. Although such practices have been reported as successful, this work proposes another paradigm, which can yield more satisfactory results. This paradigm is based on agile methods and a set of design principles known as domain-driven design. This hypothesis is supported by comparing different modeling patterns and by developing a case study
|
83 |
MDA Approach in Real-Time Systems Development with Ada 2005Gruszka, Robert January 2007 (has links)
Over the years, number of design methodologies were developed. One of the state-of-the-art modeling approaches is Model Driven Architecture. This thesis is an attempt to utilize the MDA in a specific and complex domain – real-time systems development. In MDA framework there are three levels of abstraction: computation independent, platform independent and platform specific. The target environment of the method presented in the thesis is Ada 2005 programming language which extended the old version of the language with several new object-oriented features making it suitable for using with the MDA. Application of the MDA in real-time systems domain targeted towards Ada 2005 implementation constitutes a new design method which benefits from the MDA, UML and Ada 2005 advantages. The thesis starts with presentation of the complexity of the real-time systems domain. A few real-time domain aspects are chosen as a main area for elaborating the design method. The utilizes UML Profile for Schedulability, Performance and Time for defining platform independent model. Additionally it provides its extension – the Ada UML profile – which constitutes the platform specific model. This is followed by specification of transformations between platform independent and specific model. The specification is used as a base for implementation of the transformations. Guidelines for code generation form the Ada UML profile are also provided. Finally, the thesis describes how the transformations can be implemented in Telelogic TAU tool. / gruszka.robert@gmail.com
|
84 |
Návrhové vzory architektury OS Android s využitím jazyka Kotlin / Android OS software design patterns utilizing the Kotlin languageMaloušek, Jan January 2020 (has links)
The aim of this thesis is to describe design patterns and other programming best practices used in the development of Android applications. The theoretical part analyzes design patterns, Kotlin programming language, dependency injection, reactive programming and automatic testing. The practical part deals with the design and implementation of a sample Android application, which demonstrates the advantages of using design patterns and other proven programming practices described in the theoretical part.
|
85 |
A mobile design of an emergency service system for deaf peopleTovide, Anuoluwapo Esther Semande January 2021 (has links)
>Magister Scientiae - MSc / The importance of mobile technology in improving the quality of life is not restricted to only a Hearing person, and the use of mobile devices among Deaf people is no longer limited, due to the advancements in technology Hearing loss cannot be seen but its effect is clearly visible to the persons suffering the loss. This results in a limited ability to communicate with the large world of hearing people. This research effort aims to design a SignSupport for emergency mobile application for Deaf people in Cape Town, empowering them with the same access to emergency service resources as hearing people. The proposed approach is to use a mobile application to contact standard emergency services on behalf of a Deaf person to a representative. The app will use a phone's GPS module to share the location of the victim and contact the nearest emergency service provider to attend to the Deaf victim; as well as keep the victim’s circle of family and friends informed. The app design is intuitive, simply requiring the Deaf victim to launch the app and choose an emergency type from the available options.
|
86 |
Privacy by Design : Developing a Tool For Risk Assessment in a Data Protection ContextNyberg, Samuel January 2022 (has links)
Privacy by design is one of the core principles of GDPR, but what role does design really serve here? This thesis project explores how interaction design methods can affect data privacy by prototyping a tool for risk assessment in a data protection context. With basis in user research, prototyping and usability testing, a design prototype is built as a suggestion for a new way to work with risk assessments. Findings show that there is a need for better usability when assessing risk in data protection, and that tools shaped according to user needs benefit risk assessments. At stake is our data privacy.
|
87 |
Software Development Process and Reliability Quantification for Safety Critical Embedded Systems DesignLockhart, Jonathan A. 01 October 2019 (has links)
No description available.
|
88 |
The run-time impact of business functionality when decomposing and adopting the microservice architecture / Påverkan av körtid för system funktionaliteter då de upplöses och microservice architektur applicerasFaradj, Rasti January 2018 (has links)
In line with the growth of software, code bases are getting bigger and more complex. As a result of this, the architectural patterns, which systems rely upon, are becoming increasingly important. Recently, decomposed architectural styles have become a popular choice. This thesis explores system behavior with respect to decomposing system granularity and external communication between the resulting decomposed services. An e-commerce scenario was modeled and implemented at different granularity levels to measure the response time. In establishing the communication, both REST with HTTP and JSON and the gRPC framework were utilized. The results showed that decomposition has impact on run-time behaviour and external communication. The highest granularity level implemented with gRPC for communication establishment adds 10ms. In the context of how the web behaves today, it can be interpreted as feasible but there is no discussion yet on whether it is theoretically desirable. / I linje med de växande mjukvarusystemen blir kodbaserna större och mer komplexa. Arkitekturerna som systemen bygger på får allt större betydelse. Detta examensarbete utforskar hur upplösning av system som tillämpar mikroservicearkitektur beter sig, och hur de påverkas av kommunikationsupprättande bland de upplösta och resulterande tjänsterna. Ett e-handelsscenario modelleras i olika granularitetsnivåer där REST med HTTP och JSON samt gRPC används för att upprätta kommunikationen. Resultaten visar att upplösningen påverkar runtimebeteendet och den externa kommunikationen blir långsammare. En möjlig slutsats är att påverkan från den externa kommunikationen i förhållande till hur webben beter sig idag är acceptabel. Men om man ska ligga inom teoretiskt optimala gränser kan påverkan ses som för stor.
|
89 |
On Using UML Diagrams to Identify and Assess Software Design SmellsHaendler, Thorsten January 2018 (has links) (PDF)
Deficiencies in software design or architecture can severely impede and slow down the software development and maintenance progress. Bad smells and anti-patterns can be an indicator for poor software design and suggest for refactoring the affected source code fragment. In recent years, multiple techniques and tools have been proposed to assist software engineers in identifying smells and guiding them through corresponding refactoring steps. However, these detection tools only cover a modest amount of smells so far and also tend to produce false positives which represent conscious constructs with symptoms similar or identical to actual bad smells (e.g., design patterns). These and other issues in the detection process demand for a code or design review in order to identify (missed) design smells and/or re-assess detected smell candidates. UML diagrams are the quasi-standard for documenting software design and are often available in software projects. In this position paper, we investigate whether (and to what extent) UML diagrams can be used for identifying and assessing design smells. Based on a description of difficulties in the smell detection process, we discuss the importance of design reviews. We then investigate to what extent design documentation in terms of UML2 diagrams allows for representing and identifying software design smells. In particular, 14 kinds of design smells and their representability in UML class and sequence diagrams are analyzed. In addition, we discuss further challenges for UML-based identification and assessment of bad smells.
|
90 |
Uma camada de adaptação para transmissão de mídias digitais. / An adaptation layer for multimedia transmission.Kulesza, Raoni 21 July 2006 (has links)
A convergência da Internet com outras redes (telefonia móvel e televisão digital), o surgimento da computação ubíqua e crescente demanda pela computação autônoma, tem favorecido a existência de um ambiente constantemente modificado e altamente dinâmico, caracterizado pelo tratamento e transporte de conteúdo multimídia, heterogeneidade nos recursos, tecnologias de redes e dispositivos de acesso. Este cenário tem exigido a existência de sistemas adaptativos, ou seja, que tenham a capacidade de se adaptar dinamicamente em resposta a mudanças no contexto em que estão inseridos. O projeto de software de sistemas adaptativos que visem atender de forma satisfatória evolução e mudança neste novo ambiente heterogêneo da Internet tem particular relevância e complexidade. Um dos principais desafios é realizar a implementação de comportamentos adaptativos sem entrelaçamento com outras funcionalidades da aplicação, que podem levar a dificuldade de legibilidade e prejudicar a manutenção do código. Este trabalho procura abordar este tema empregando programação orientada a aspectos na especificação e implementação de uma camada de adaptação que atua sobre aplicações multimídia em rede utilizando abordagens de adaptação baseados em servidor. Em particular, através do uso da linguagem AspectJ, é mostrado como promovemos a separação do interesse de adaptabilidade de forma modular para permitir que a camada de adaptação realize configuração estática e dinâmica de processos de transmissão de fluxos multimídia a partir de mecanismos de monitoração do seu ambiente de operação. / The convergence of the Internet with other networks (e.g. Mobile Telecom and Digital Television Networks), the ubiquitous computing raising and the increasing demand on the autonomic computing has favored the existence of a constantly modified and highly dynamic environment. It is characterized by the treatment and transport of multimedia content and resources, network technologies and access devices heterogeneity. This scenario has demanded the existence of adaptive systems, which has the capacity to dynamically adapt based on the context where they are inserted. The software design for adaptive systems, which aim to deal on a satisfactory way the evolution and changes in this new heterogeneous Internet environment, has particular relevance and complexity. One of the main challenges is performing the development of adaptive behaviors without tangled and scattered code along other application functionalities, which could result in code legibly problems, affecting its maintenance. The main purpose of this work is the specification and development of an adaptation layer working in multimedia networked application and using server based adaptation approach, making use of aspect oriented programming. Specifically, through the adoption of the AspectJ language it was showed how the adaptability concern was well modularized by enabling the adaptation layer to perform static and dynamic configuration of the multimedia chains through the monitoring of its operational environment.
|
Page generated in 0.0323 seconds