| dc.creator | Guedes, Ana Maria Ferreira de Abreu | |
| dc.date.accessioned | 2026-08-03T11:11:01Z | |
| dc.date.available | 2026-07-09 | |
| dc.date.available | 2026-08-03T11:11:01Z | |
| dc.date.issued | 2026-07-09 | |
| dc.identifier.citation | GUEDES, Ana Maria Ferreira de Abreu. NILO: um modelo de processo de software para o desenvolvimento de
linguagens de programação. Orientador: Jorgiano Márcio Bruno Vidal. 2026. 54 f. Trabalho de Conclusão de Curso (Graduação em Tecnologia em Análise e Desenvolvimento de Software) - Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte. Natal, 2026 | pt_BR |
| dc.identifier.uri | http://memoria.ifrn.edu.br/handle/1044/3259 | |
| dc.description.abstract | In Software Engineering, approaches based on methods, methodologies, or
processes are widely employed to guide the definition, design, evaluation, and
maintenance of systems. However, when the focus shifts to programming languages,
the landscape is different: although the literature recognizes the evolutionary nature
of these languages, there is a noticeable scarcity of systematized processes
equivalent to those found in traditional software engineering. This absence of
structured models entails significant challenges, particularly in the long-term
maintenance and evolution of languages. To mitigate this problem, this work
proposes NILO, an iterative and incremental process model designed to
systematically guide the development of programming languages. Additionally, the
feasibility of its phases and artifacts is validated through a case study. | pt_BR |
| dc.description.sponsorship | CAPES | pt_BR |
| dc.language | por | pt_BR |
| dc.publisher | Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte | pt_BR |
| dc.rights | Acesso Aberto | pt_BR |
| dc.subject | Linguagem de programação | pt_BR |
| dc.subject | Modelo de processo de software | pt_BR |
| dc.subject | Desenvolvimento de linguagens de programação | pt_BR |
| dc.subject | Programming languages | pt_BR |
| dc.subject | Software process models | pt_BR |
| dc.subject | Language development | pt_BR |
| dc.subject | Engenharia de software | pt_BR |
| dc.subject | Software Engineering | pt_BR |
| dc.title | NILO: um modelo de processo de software para o desenvolvimento de linguagens de programação | pt_BR |
| dc.type | Trabalho de Conclusão de Curso | pt_BR |
| dc.creator.ID | 097.053.193-16 | pt_BR |
| dc.creator.ID | https://orcid.org/0009-0006-9192-7881 | pt_BR |
| dc.creator.Lattes | http://lattes.cnpq.br/2032468094235228 | pt_BR |
| dc.contributor.advisor1 | Vidal, Jorgiano Marcio Bruno | |
| dc.contributor.advisor1ID | https://orcid.org/0009-0006-9320-0870 | pt_BR |
| dc.contributor.advisor1Lattes | http://lattes.cnpq.br/0241024826636996 | pt_BR |
| dc.contributor.advisor-co1 | Freire, Marília Aranha | |
| dc.contributor.advisor-co1ID | https://orcid.org/0000-0003-1971-4233 | pt_BR |
| dc.contributor.advisor-co1Lattes | http://lattes.cnpq.br/8869115413376282 | pt_BR |
| dc.contributor.referee1 | Vidal, Jorgiano Márcio Bruno | |
| dc.contributor.referee2 | Freire, Marília Aranha | |
| dc.contributor.referee3 | Sousa, Galileu Batista | |
| dc.contributor.referee4 | Kreutz, Marcio Eduardo | |
| dc.publisher.country | Brasil | pt_BR |
| dc.publisher.department | Natal-Central | pt_BR |
| dc.publisher.initials | IFRN | pt_BR |
| dc.subject.cnpq | Ciência da Computação | pt_BR |
| dc.description.resumo | Na Engenharia de Software, abordagens baseadas em métodos, metodologias ou processos são amplamente empregadas para guiar a definição, concepção, avaliação e manutenção de sistemas. Contudo, quando o foco se volta para as linguagens de programação, o panorama é diferente: embora a literatura reconheça o caráter evolutivo dessas linguagens, nota-se uma escassez de processos
sistematizados equivalentes aos da engenharia de software tradicional. Essa ausência de modelos estruturados acarreta desafios significativos, sobretudo na manutenção e evolução de longo prazo das linguagens. Para mitigar esse problema, este trabalho propõe o NILO, um modelo de processo iterativo e incremental projetado para guiar o desenvolvimento de linguagens de programação de maneira sistemática. Adicionalmente, a viabilidade de suas fases e artefatos é validada por meio de um estudo de caso. | pt_BR |
| dc.relation.references | MERNIK , Marjan; HEERING, Jan; SLOANE, Anthony M.. When and how to develop
domain-specific languages. Acm Computing Surveys, [S.L.], v. 37, n. 4, p. 316-344,
dez. 2005. Association for Computing Machinery (ACM).
http://dx.doi.org/10.1145/1118890.1118892.
TRIVEDI, Munesh Chandra. Role Of Context In Usability Evaluations: a review.
Advanced Computing: An International Journal, [S.L.], v. 3, n. 2, p. 69-78, 31 mar.
2012. Academy and Industry Research Collaboration Center (AIRCC).
http://dx.doi.org/10.5121/acij.2012.3208.
AHO, Alfred V.; LAM, Monica S.; SETHI, Ravi; ULLMAN, Jeffrey D. Compiladores:
princípios, técnicas e ferramentas. 2. ed. São Paulo: Pearson Education do Brasil,
2008.
BOEHM, B. W.. A spiral model of software development and enhancement.
Computer, [S.L.], v. 21, n. 5, p. 61-72, maio 1988. Institute of Electrical and
Electronics Engineers (IEEE). http://dx.doi.org/10.1109/2.59.
NYSTROM, Robert. Crafting Interpreters. [S. L.]: Genever Benning, 2021. 639 p.
VOELTER, Markus et al. DSL Engineering: designing, implementing and using
domain-specific languages. North Charleston: Createspace Independent Publishing
Platform, 2013. 558 p.
FAVRE, J.-M.. Languages evolve too! Changing the Software Time Scale. Eighth
International Workshop On Principles Of Software Evolution (Iwpse'05), [S.L.],
p. 33-44, 2005. IEEE. http://dx.doi.org/10.1109/iwpse.2005.22.
SOMMERVILLE, Ian. Engenharia de software. 10. ed. São Paulo: Pearson
Education do Brasil, 2019. 744 p.
PRESSMAN, Roger S. Engenharia de Software: uma abordagem profissional. 9.
ed. Porto Alegre: Amgh, 2021.
PEFFERS, Ken; TUUNANEN, Tuure; ROTHENBERGER, Marcus A.; CHATTERJEE,
Samir. A Design Science Research Methodology for Information Systems Research.
Journal Of Management Information Systems, [S.L.], v. 24, n. 3, p. 45-77, dez.
2007. Informa UK Limited. http://dx.doi.org/10.2753/mis0742-1222240302.
SPINELLIS, Diomidis. Notable design patterns for domain-specific languages.
Journal Of Systems And Software, [S.L.], v. 56, n. 1, p. 91-99, fev. 2001. Elsevier
BV. http://dx.doi.org/10.1016/s0164-1212(00)00089-3.
KITCHENHAM, B.; PICKARD, L.; PFLEEGER, S.L. Case studies for method and tool
evaluation. IEEE Software, v. 12, n. 4, p. 52–62, 1995. Disponível em:
http://ieeexplore.ieee.org/document/391832. Acesso em: 2 jul. 2026.
54
CUEVAS, Erik Hombre; ZALDIVAR, Daniel; PEREZ, Marco. Impact of Programming
Languages on Learning Performance. International Journal Of Information And
Communication Technology Education, [S.L.], v. 21, n. 1, p. 1-17, 22 mar. 2025.
IGI Global. http://dx.doi.org/10.4018/ijicte.371419.
VASCONCELOS, Felipe Alves. Linguagem-Matty. 2026. Disponível em:
https://github.com/FelipeAlves14/linguagem-Matty. Acesso em: 14 jun. 2026.
Hogan, M. and Newton, E. (2015), Supplemental Information for the Interagency
Report on Strategic U.S. Government Engagement in International Standardization to
Achieve U.S. Objectives for Cybersecurity, NIST Interagency/Internal Report
(NISTIR), National Institute of Standards and Technology, Gaithersburg, MD,
https://doi.org/10.6028/NIST.IR.8074v2. Disponível em:
https://nvlpubs.nist.gov/nistpubs/ir/2015/NIST.IR.8074v2.pdf. Acesso em: 16 maio
2026.
GLINZ, Martin; VAN LOENHOUD, Hans; STAAL, Stefan; BÜHNE, Stan. Nível
Fundamental: Guia de Estudo para o Certified Professional for Requirements
Engineering (CPRE) de acordo com o padrão IREB. Versão 1.2.2. [S.l.]: International
Requirements Engineering Board (IREB), 2024.
PARR, Terence. The Definitive ANTLR 4 Reference. S. L: Pragmatic Bookshelf,
2013. 328 p.
LLVM Project (org.). The LLVM Compiler Infrastructure. 2026. Disponível em:
https://llvm.org/. Acesso em: 4 abr. 2025. | pt_BR |