397,288 research outputs found

    Post-Development Software Architecture

    Get PDF
    Abstract Software architecture (SA) plays an important role in software development. Since the lifecycle stages post development become more and more important and face with many challenges similar to the development, it is a natural idea to introduce or extend SA into the stages post development. In this paper, we present our practices and experiences on applying software architecture into the deployment and maintenance of J2EE (Java 2 Platform Enterprise Edition) applications, including the tool and principles of SAbased J2EE deployment and SA-based J2EE online maintenance. It demonstrates that 1) SA can help to achieve a holistic, finegrained and automated deployment of large-scale distributed systems by visualizing the structure of the system to be deployed; 2) SA can provide an understandable, operational and global view for online maintenance by organizing the fragmented and trivial management mechanisms; 3) Extending SA into the stages post development makes it possible that the whole lifecycle of a software system can be governed by SA with many benefits, e.g. consistency, traceability, responsiveness, etc

    The development of a post-test diagnostic system for rocket engines

    Get PDF
    An effort was undertaken by NASA to develop an automated post-test, post-flight diagnostic system for rocket engines. The automated system is designed to be generic and to automate the rocket engine data review process. A modular, distributed architecture with a generic software core was chosen to meet the design requirements. The diagnostic system is initially being applied to the Space Shuttle Main Engine data review process. The system modules currently under development are the session/message manager, and portions of the applications section, the component analysis section, and the intelligent knowledge server. An overview is presented of a rocket engine data review process, the design requirements and guidelines, the architecture and modules, and the projected benefits of the automated diagnostic system

    Scaling Up a Software Product: The Journey of Pipedrive

    Get PDF
    Tüüpilistel alustavatel tarkvaratoodet arendavatel iduettevõtetel on lapik võimustruktuur ja väike hulk meeskondi või ainult üks meeskond. Sellistes ettevõtetes tehakse tööd tihedalt koos ja arendatakse monoliitset tarkvarasüsteemi kasutades agiilseid meetodeid. Iduettevõtte kasvades kasvab keerukus ka ettevõtte tarkvarasüsteemis ja ettevõtte korralduses tasemeni, kus lapik võimustruktuur ja monoliitne tarkvara arhitektuur saavad tarkvara tootearenduse pudelikaeladeks. Sellesse etappi jõudnud ettevõtted seisavad silmitsi väljakutsetega kuidas restruktureerida ettevõtte korraldus ja tarkvara arhitektuur selliselt, et lihtsustuks tarkvara arendus, hooldus ja kasutamine ning kuidas jagada ettevõte alamüksusteks, kus suhtluses esinevad kaod oleks aktsepteeritavad. Käesolev töö analüüsib iduettevõttena alustanud ettevõtte väljakutseid eespool kirjeldatud arenguetapis ettevõtte Pipedrive näitel.Käesolev töö kirjeldab ettevõtte Pipedrive üleminekut monoliitselt tarkvara arhitektuurilt mikroteenustel põhinevale arhitektuurile ja kindlate vastutusvaldkondadega meeskondadelt üleminekut meeskondadele, mis luuakse dünaamiliselt tegelemaks ajaliselt piiratud ja eesmärgipäraste ülesannetega.Typical early-stage software product startups have a flat structure, consisting of one or a handful of teams, working closely together to develop a monolithic software system using agile methods. As the startup grows, the complexity of the software system and of the organization eventually reaches a point where a flat organizational structure and a monolithic software architecture become a bottleneck in the development of the product. Post-startup companies that reach this point face the challenge of re-structuring the organization and their software architecture in order to simplify the development, maintenance, and operation of the software system, while breaking down the organization into sub-structures with manageable communication overhead. This thesis analyzes the challenges faced by post-startup companies during this phase via a case study at Pipedrive.The thesis reflects on the Pipedrive's journey from a monolithic architecture to a microservices architecture, and from a static structure consisting of teams with fixed areas of responsibility to a dynamic structure consisting of dynamic teams with time-bounded missions

    Software Development in the Post-PC Era: Towards Software Development as a Service

    Get PDF
    Abstract. Software systems affect all aspects of our modern life andare revolutionizing the way we live. Over the years, software developmenthas evolved to meet the needs of new types of applications and toembrace new technological disruptions. Today, we witness the rise of mobilitywhere the role of the conventional high-specification PC is declining.Some refer to this era as the Post-PC era. This technological shift,powered by a key enabling technology - cloud computing, has opened new opportunities for human advancement (e.g. the Internet of Things).Consequently, the evolving landscape of software systems drives the need for new methods for conceiving them. Such methods need to a) address the challenges and requirements of this era and b) embrace the benefitsof new technological breakthroughs. In this paper, we list the characteristics of the Post-PC era from the software development perspective. In addition, we describe three motivating trends of software development processes. Then, we derive a list of requirements for the future software development approach from the characteristics of the Post-PC era and from the motivating trends. Finally, we propose a reference architecturefor cloud-based software process enactment as an enabler for Software Development as a Service (SDaaS). The architecture is thefirst step to address the needs that we have identified

    ESTIMASI BIAYA PEMBUATAN PERANGKAT LUNAK MENGGUNAKAN METODE COCOMO II PADA SISTEM INFORMASI PELAPORAN KEGIATAN PEMBANGUNAN

    Get PDF
    Nowadays, software is absolutely important for individual or company in many matters. Software design or development is done based on future or certain condition. So, it is important to understand these conditions to calculate cost and duration of a software project. This research discusses on cost estimation method of software project, this is COCOMO II (Constructive Cost Model). COCOMO II has three submodels i.e. Application Composition, Early Design, and Post Architecture, which has a possibility to estimate in less or complete condition of information. By using this COCOMO II estimation model, total efforts being needed to complete a software project in person month and total duration of processing or developing in month can be known. By adapting project standard value in the area with certain time, nominal value of a software project can be determined. Study case completed in Development Activity Report Information System, gives a conclusion that COCOMO II method is suitable to calculate cost (effort) and schedule (time) estimation. Size used as basic calculation is SLOC (Source Line Of Code). In this research, SLOC is determined by calculating UFP (Unadjusted Function Points), while SLOC is determined by calculating the number of source code line of the former project. Keywords : Software Cost Estimation, COCOMO II, Post Architect

    Design of a Flexible Control Platform and Miniature in vivo Robots for Laparo-Endoscopic Single-Site Surgeries

    Get PDF
    Minimally-invasive laparoscopic procedures have proven efficacy for a wide range of surgical procedures as well as benefits such as reducing scarring, infection, recovery time, and post-operative pain. While the procedures have many advantages, there are significant shortcomings such as limited instrument motion and reduced dexterity. In recent years, robotic surgical technology has overcome some of these limitations and has become an effective tool for many types of surgeries. These robotic platforms typically have an increased workspace, greater dexterity, improved ergonomics, and finer control than traditional laparoscopic methods. This thesis presents the designs of both a four degree-of-freedom (DOF) and 5-DOF miniature in vivo surgical robot as well as a software architecture for development and control of such robots. The proposed surgical platform consists of a two-armed robotic prototype, distributed motor control modules, custom robot control software, and remote surgeon console. A plug-in architecture in the control software provides the user a wide range of user input devices and control algorithms, including a numerical inverse kinematics solver, to allow intuitive control and rapid development of future robot prototypes. A variety of experiments performed by a surgeon at the University of Nebraska Medical Center were used to evaluate the performance of the robotic platform. Adviser: Shane Farrito

    Design of a Flexible Control Platform and Miniature in vivo Robots for Laparo-Endoscopic Single-Site Surgeries

    Get PDF
    Minimally-invasive laparoscopic procedures have proven efficacy for a wide range of surgical procedures as well as benefits such as reducing scarring, infection, recovery time, and post-operative pain. While the procedures have many advantages, there are significant shortcomings such as limited instrument motion and reduced dexterity. In recent years, robotic surgical technology has overcome some of these limitations and has become an effective tool for many types of surgeries. These robotic platforms typically have an increased workspace, greater dexterity, improved ergonomics, and finer control than traditional laparoscopic methods. This thesis presents the designs of both a four degree-of-freedom (DOF) and 5-DOF miniature in vivo surgical robot as well as a software architecture for development and control of such robots. The proposed surgical platform consists of a two-armed robotic prototype, distributed motor control modules, custom robot control software, and remote surgeon console. A plug-in architecture in the control software provides the user a wide range of user input devices and control algorithms, including a numerical inverse kinematics solver, to allow intuitive control and rapid development of future robot prototypes. A variety of experiments performed by a surgeon at the University of Nebraska Medical Center were used to evaluate the performance of the robotic platform. Adviser: Shane Farrito

    UML-SOA-Sec and Saleem's MDS Services Composition Framework for Secure Business Process Modelling of Services Oriented Applications

    Get PDF
    In Service Oriented Architecture (SOA) environment, a software application is a composition of services, which are scattered across enterprises and architectures. Security plays a vital role during the design, development and operation of SOA applications. However, analysis of today's software development approaches reveals that the engineering of security into the system design is often neglected. Security is incorporated in an ad-hoc manner or integrated during the applications development phase or administration phase or out sourced. SOA security is cross-domain and all of the required information is not available at downstream phases. The post-hoc, low-level integration of security has a negative impact on the resulting SOA applications. General purpose modeling languages like Unified Modeling Language (UML) are used for designing the software system; however, these languages lack the knowledge of the specific domain and "security" is one of the essential domains. A Domain Specific Language (DSL), named the "UML-SOA-Sec" is proposed to facilitate the modeling of security objectives along the business process modeling of SOA applications. Furthermore, Saleem's MDS (Model Driven Security) services composition framework is proposed for the development of a secure web service composition
    corecore