1 |
Transformation of Rational Unified Process analysis model to design model according to architectural patternsBednarz, Andrzej January 2005 (has links)
Applying Rational Unified Process (RUP) in a project means to develop a set of models before the system could be implemented. The models depict the essentials of the system from requirements to detailed design. They facilitate getting a system that has appropriate and rich documentation (therefore highly maintainable) and addresses user needs. However, creation of the models may cause overheads since a lot of work has to be put to elaborate the artefacts. In this paper a method that makes RUP more efficient is proposed. The method makes use of the fact that every subsequent model is developed basing on the previous model. In other words, models are successively transformed from requirements up to executable code. In particular, design model bases on an analysis model. The proposed method applies automatic model transformation from an analysis model to a design model. Firstly, an approach for performing automatic transformation is chosen. Secondly, a tool applying this approach is implemented. Finally, the transformation tool is tested and evaluated in an empirical study. The results show that automation of model transformation may be beneficial, and therefore can help in getting better systems in shorten time.
|
2 |
Characterizing Student Proficiency In Software Modeling In Terms of Functions, Structures, and BehaviorsPaul JoseKutty Thomas (10711266) 06 May 2021 (has links)
<p>Software modeling is an integral
practice for software engineers especially as the complexity of software
solutions increase. There is precedent in industry to model information systems
in terms of functions, structures, and behaviors. While constructing these
models, abstraction and systems thinking are employed to determine elements
essential to the solution and how they are connected. However, both abstraction
and systems thinking are difficult to put in practice and difficult to teach
due to the, often, ill-structured nature of real-world IT problems. Unified
Modeling Language (UML) is the industry standard for software modeling but
unfortunately it is often used incorrectly and misunderstood by novices. This
has also been observed in educational contexts where students encounter
difficulty in employing the appropriate level of abstraction in modeling and
programming contexts and not necessarily being able to view or treat software
systems as being interconnected. </p>
<p>The researcher detailed a
multi-methods approach, through the lens of pragmatism, towards understanding
patterns of student proficiency with abstraction and software modeling in terms
capturing the functional, structural, and behavioral aspects of an information
system, as given by the Structures-Behaviors-Function framework. The
quantitative strand involved the development of rubrics to analyze functional,
structural, and behavioral models given by UML activity diagrams, class
diagrams, and sequence diagrams, respectively. The subjects of this study were
students enrolled in a sophomore-level systems analysis and design class. Descriptive
analysis revealed patterns of modeling proficiency. Students were generally
proficient in modeling the system in terms of functions but there was an
overall drop-off in proficiency when modeling the system in terms of structures
and behaviors. The results of the clustering analysis revealed underlying profiles
of students based on abstract thinking and systems thinking ability. Two
distinct clusters – high performing students and moderate performing students –
were revealed with statistically significant differences between the groups in
terms of abstract thinking and systems thinking ability. Further correlational
analysis was performed on each cluster. The results of the correlational
analyses pointed to significant positive associations between software modeling
proficiency and the constructs of abstract thinking and systems thinking. Logistic
regression analysis was then performed, and it could be inferred from the
regression model that abstract thinking in terms of behaviors and systems
thinking in terms of aligning sequence diagrams with activity diagrams were the
most important predictors of high performance. </p>
The qualitative strand of this study involved a
case study approach using the think-aloud protocol centered around exploring
how students utilized abstract thinking and systems thinking while constructing
software models. The participants of this study were students who had completed
the sophomore-level systems analysis and design course. Thematic analysis was
utilized to identify themes of abstract thinking and systems thinking within
the epistemic games of structural, functional, and process analyses. Two
different approaches towards modeling information systems were identified and
chronological visualizations for each approach were presented. Overall, it
could be inferred from the results and findings of the study that the learning
design of the sophomore-level course was successful in equipping students with
the skills to proficiently model information systems in terms of functions.
However, the students were not as proficient in modeling information systems in
terms of structures and behaviors. The theoretical contribution of this study was
centered around the application of the SBF framework and epistemic forms and
games in the context of information systems. The methodological contributions
pertain to the rubrics that were developed which can be used to evaluate
software modeling proficiency as well as abstract thinking and systems
thinking. Abstract thinking and systems thinking were successfully
characterized in the context of information systems modeling. The results of
this study have implications in computing education. The suggested
instructional approaches and scaffolds can be utilized to improve outcomes in
terms of structural and behavioral modeling proficiency.
|
3 |
SystEM-PLA: um método sistemático para avaliação de arquitetura de linha de produto de software baseada em UML / SystEM-PLA: a systematic evaluation method for UML-based software product line architectureOliveira Junior, Edson Alves de 03 September 2010 (has links)
A abordagem de linha de produto de software (LP) tem como objetivo principal promover a geração de produtos específicos de um determinado domínio com base na reutilização de uma infraestrutura central, chamada núcleo de artefatos. Um dos principais artefatos do núcleo de uma LP é a Arquitetura de LP (ALP), que representa a abstração de todas as arquiteturas de sistemas únicos que podem ser gerados, para um domínio específico. Avaliações de ALP são importantes, pois permitem aumentar a produtividade e a qualidade dos produtos da LP, bem como, seus resultados permitem a análise de metas de negócio e de retorno de investimento. Este trabalho propõe um método sistemático para avaliação de ALP, o SystEM-PLA (a Systematic Evaluation Method for Software Product Line Architectures). Tal método considera modelos de ALP em UML, por ser uma notação amplamente conhecida e consolidada. SystEM-PLA é composto por um metaprocesso de avaliação, diretrizes que guiam o usuário em como avaliar uma ALP e métricas básicas para modelos UML e atributos de qualidade. O método utiliza a abordagem SMarty (Stereotype-based Management of Variability), para gerenciar variabilidades em LP baseadas em UML. Análises de trade-off com o objetivo de priorizar atributos de qualidade para o desenvolvimento e evolução dos produtos de uma LP são realizadas com base na aplicação e coleta das métricas do SystEM-PLA em configurações de uma ALP. As métricas propostas para os atributos de qualidade complexidade e extensibilidade foram validadas por meio de um estudo experimental. Evidências indicaram a viabilidade de aplicação do método SystEM-PLA na indústria com base em um estudo experimental realizado com profissionais de uma empresa de grande porte no setor de desenvolvimento de software / The software product line (PL) approach aims at promoting the generation of specific products from a particular domain based on the reuse of a central infra-structure, so-called core assets. One of the main assets of a PL is the PL Architecture (PLA) that represents the abstraction of all possible single-product architectures that can be generated for a particular domain. PLA evaluations are important due to allow the increasing of the productivity and the quality of PL products, as well as their results allow business drivers and return on investment analyzes. This work proposes a Systematic Evaluation Method for Software Product Line Architectures, the SystEM-PLA. This method takes into account UML models with PLA variability explicitly represented, since UML is a widely known and consolidated notation. SystEM-PLA is composed of an evaluation meta-process, guidelines that drive the user on how to evaluate a PLA, and basic and quality attribute metrics. This method uses the proposed approach Stereotype-based Management of Variability (SMarty) to manage variabilities in UML-based PLs. Trade-off analyses to prioritize quality attributes for the development and evolution of PL products are carried out based on the application and collection of the SystEM-PLA metrics from PLA configurations. The quality attribute metrics were validated trough an experimental study. Evidences indicated the SystEM-PLA application feasibility in industry based on an experimental study, planned and conducted with professionals from a large software development organization
|
4 |
SystEM-PLA: um método sistemático para avaliação de arquitetura de linha de produto de software baseada em UML / SystEM-PLA: a systematic evaluation method for UML-based software product line architectureEdson Alves de Oliveira Junior 03 September 2010 (has links)
A abordagem de linha de produto de software (LP) tem como objetivo principal promover a geração de produtos específicos de um determinado domínio com base na reutilização de uma infraestrutura central, chamada núcleo de artefatos. Um dos principais artefatos do núcleo de uma LP é a Arquitetura de LP (ALP), que representa a abstração de todas as arquiteturas de sistemas únicos que podem ser gerados, para um domínio específico. Avaliações de ALP são importantes, pois permitem aumentar a produtividade e a qualidade dos produtos da LP, bem como, seus resultados permitem a análise de metas de negócio e de retorno de investimento. Este trabalho propõe um método sistemático para avaliação de ALP, o SystEM-PLA (a Systematic Evaluation Method for Software Product Line Architectures). Tal método considera modelos de ALP em UML, por ser uma notação amplamente conhecida e consolidada. SystEM-PLA é composto por um metaprocesso de avaliação, diretrizes que guiam o usuário em como avaliar uma ALP e métricas básicas para modelos UML e atributos de qualidade. O método utiliza a abordagem SMarty (Stereotype-based Management of Variability), para gerenciar variabilidades em LP baseadas em UML. Análises de trade-off com o objetivo de priorizar atributos de qualidade para o desenvolvimento e evolução dos produtos de uma LP são realizadas com base na aplicação e coleta das métricas do SystEM-PLA em configurações de uma ALP. As métricas propostas para os atributos de qualidade complexidade e extensibilidade foram validadas por meio de um estudo experimental. Evidências indicaram a viabilidade de aplicação do método SystEM-PLA na indústria com base em um estudo experimental realizado com profissionais de uma empresa de grande porte no setor de desenvolvimento de software / The software product line (PL) approach aims at promoting the generation of specific products from a particular domain based on the reuse of a central infra-structure, so-called core assets. One of the main assets of a PL is the PL Architecture (PLA) that represents the abstraction of all possible single-product architectures that can be generated for a particular domain. PLA evaluations are important due to allow the increasing of the productivity and the quality of PL products, as well as their results allow business drivers and return on investment analyzes. This work proposes a Systematic Evaluation Method for Software Product Line Architectures, the SystEM-PLA. This method takes into account UML models with PLA variability explicitly represented, since UML is a widely known and consolidated notation. SystEM-PLA is composed of an evaluation meta-process, guidelines that drive the user on how to evaluate a PLA, and basic and quality attribute metrics. This method uses the proposed approach Stereotype-based Management of Variability (SMarty) to manage variabilities in UML-based PLs. Trade-off analyses to prioritize quality attributes for the development and evolution of PL products are carried out based on the application and collection of the SystEM-PLA metrics from PLA configurations. The quality attribute metrics were validated trough an experimental study. Evidences indicated the SystEM-PLA application feasibility in industry based on an experimental study, planned and conducted with professionals from a large software development organization
|
Page generated in 0.056 seconds