software design Flashcards
What does SDLC stand for?
Software Design Life Cycle
What are the SDLC stages in order?
Planning, Analysis, Design, Development, Testing, Deployment, Maintenance
What are Functional requirements?
They are basically the requirements stated by the user which one can see directly in the final product.
Example: ‘Send email when a new customer signs up’
What are Non-Functional requirements?
These are basically the quality constraints that the system must satisfy according to the project contract. The priority to which these factors are implemented varies from one project to another.
Example: Modified data in a database should be updated for all users accessing it within 2 seconds.
Software design is a step in SDLC, which moves the concentration from problem domain to solution domain. Tasks like:
- Finding bugs,
- Debugging,
- Restructuring,
- And changing the functionality of specific elements in the software application becomes quite easy due to software design.
Poor design can damage a brand and have a negative impact on sales as well as brand perception. Example:
- Breaking of one functionality during development of
another one. - Existing code not supporting future enhancements,
- Complexity in understanding and maintaining the
code, - Difficult to test feature in isolation,-Difficult to add new
features.
What is Software Design?
a process to transform user requirements into a suitable form, which helps the programmer in software coding and implementation.
Who writes Technical Design Docs (TDD) and what are they used for?
The development team
describes the minute detail of either the entire design or specific parts of it, such as: The signature of an interface, the requirements, detailed designs, including all datatypes/structures required (input data types, output data types, exceptions)
What is an SRS ( Software Requirement Specification ) used for?
For assessing user requirements, an SRS (Software Requirement Specification) document is created.
What is SSD?
SSD is a system sequence diagram(SSD) that shows, for a particular scenario of a use case, the events that external actors generate, their order, and possible inter-system events.
Tip: An actor is anyone who interacts with the system. Users are always actors.