Artifact (software development)
Last Updated :
24 May, 2023
Artifact is highly associated and related to specific methods or processes of development. Methods or processes can be project plans, business cases, or
risk assessments. Distinct gathering and collections of detailed information are generally organized and incorporated into artifact sets. A set generally represents complete aspect of system. This is simply done to make development and establishment of complete software system in manageable manner.
Artifacts of the life-cycle of software are generally organized and divided into two sets i.e., Management set and Engineering set. These sets are further divided or partitioned by underlying language of set. These artifact sets are shown below in diagram :
1. Engineering Sets :
In this set, primary mechanism or method for forming an idea regarding evolving quality of these artifact sets in transitioning of information from one set to another. This set is further divided into four distinct sets that include requirements set, design set, implementation set, and deployment set.
- Requirement Set -
This set is primary engineering context simply used for evaluating other three artifact sets of engineering set and basis of test cases. Artifacts of this set are evaluated, checked, and measured through combination of following:
- Analysis of consistency among present vision and requirements models.
- Analysis of consistency with supplementary specifications of management set.
- Analysis of consistency among requirement models.
- Design Set -
Tools that are used in Visually modeling tools. To engineer design model, UML (Unified Modeling Language) notations are used. This sets simply contains many different levels of abstractions. Design model generally includes all structural and behavioral data or information to ascertain bill of material. These set artifacts mostly include test models, design models, software architecture descriptions.
- Implementation Set -
Tools that are used are debuggers, compilers, code analyzers, tools for test management. This set generally contains source code as implementation of components, their form, interfaces, and executables that are necessary for stand-alone testing of components.
- Deployment Set -
Tools that are used are network management tools, test coverage, and test automation tools, etc. To simply use end result or product in its environment where it is supposed to be used, these set generally contains executable software’s, build scripts, ML notations, installation scripts.
2. Management Set :
This set usually captures artifacts that are simply associated with planning and execution or running process. These artifacts generally make use of ad hoc notations. It also includes text, graphics or whatever representation is required or needed to simply capture “contracts” among all project personnel (such as project developers, project management, etc.), among different stakeholders (such as user, project manager, etc.), and even between stakeholders and project personnel.
This set includes various artifacts such as work breakdown structure, business case, software development plan, deployment, Environment. Artifacts of this set are evaluated, checked, and measured through combination of following :
- Review of relevant stakeholder.
- Analyzing alterations or changes among present version of artifact and previous versions.
- Demonstrations of major milestone regarding balance between all artifacts and, in specific or particular, accuracy of business case and vision artifacts.
Similar Reads
Bug Life Cycle in Software Development As we know during the development of any software product the development teams follow the Software Development Life Cycle (SDLC) processes. But the development process is not so easy and always runs smoothly. During the development process when a product is being developed different types of defect
9 min read
Challenges of Software Developers Software development is a dynamic and ever-evolving field that powers the digital world, from mobile apps to cloud-based systems. However, creating reliable, efficient, and secure software is no small feat. Developers face a myriad of challenges that test their technical expertise, adaptability, and
4 min read
Introduction of Test Artifacts Test Artifacts are simply integral part of software testing. These are generally set of documents, which software project tester gets during STLC (Software Testing Life Cycle). Test artifacts are by-products that are generated or created while performing software testing. These generated test artifa
6 min read
Full form of SDLC | Software Development Life Cycle We all know that software is the backbone of countless applications and systems, but it is also true that the concept of SDLC, or the Software Development Life Cycle, emerges as a guiding framework for them. Let's delve into the vital information encapsulated within the full form of SDLC. Full form
3 min read
Computer Aided Software Engineering (CASE) Computer-aided software engineering (CASE) is the implementation of computer-facilitated tools and methods in software development. CASE is used to ensure high-quality and defect-free software. CASE ensures a check-pointed and disciplined approach and helps designers, developers, testers, managers,
5 min read
Software Business and Development - Software Engineering Software Business means selling software for the business or sometimes it is referred to as selling information about various software made for business purposes that are so-called business software. This article focuses on discussing Software Business and Development in detail. What is a Software B
3 min read