Você está na página 1de 2

Edwin Ngwa

Unit 1 DB2 : Software Design


CS457 -1602A-01: Software Design Introduction
Professor:

Cheryl Frederick

March 06, 2016

Software design is the creative process of translating the requirement specifications into a
design document providing a blueprint to allow for software development to proceed with
an understanding of what is to be built and how it is expected to build (McEllrath, 2007).
Once approved by the project sponsor, these documents will constitute the baseline used by
the developers in engineering, implementing and maintaining the program. It is also a
reference document from which a requirement traceability matrix can be derived to ensure all
the customer requirements have been met.
Software Design specification are primarily the developers blueprint. It provides the team
with an overall view of the system architecture, necessary component level descriptions and
the various interactions that will need to be implemented to get the desired features and
functionalities. For future team members not involved in the original design process, these
documents can serve as training manuals with necessary guidance on how the product should
be built, implemented and maintained to meet the software requirements.
The detailed description of all the steps involved in creating the product as well as the
various test scenarios included can be used as an evidence to justify and show the
implementation of the features wanted by the customer and how the product can be
maintained in the long run to satisfy emerging needs.
Software maintenance is not only about fixing bugs. With the assumption that the product
should be easy to maintain and adapt to future needs without creating an additional burden
for maintainers, the design architecture should provide the necessary specifications to address
upgrades, future modification or integration of the platform with other environment. Instead
of building a new product from scratch, future developers can model the development of new
functionalities from the original blueprint and enable the customer to save time and money.
It is well documented that many requirements errors are passed undetected to the later
phases of the life cycle (Christel & Kang, 1992) of a software creating additional cost and
dissatisfied customers. To avoid the pitfalls of designing a system that falls short from
delivering the desired features and functionalities, it is best to promote an active collaboration
between the team of developers and the stakeholders during the creative process in such a
manner to discuss design elements which do not align with a requirement and determine
whether all necessary requirements have been addressed (Crowe-S, n.d.)

References
Christel, M.G. & Kang, K. C. (1992). Issues in Requirements Elicitation. Retrieved from
http://www.sei.cmu.edu/reports/92tr012.pdf
Crowe-S,A.(n.d.). Purpose of a Software Design Document. Retrieved from
http://www.ehow.com/facts_6967947_purpose-software-design-document.html
McElrath,R. (2007). XML Legal Document Utility Software Design Document. Retrieved
from https://www.oasis-open.org/committees/download.php/24846/ExampleSoftwareDesignDocument-LegalXMLUtility.pdf