Client Liaison and Management :Client Liaison and Management SDLC, Systems Analysis, Systems Analyst
SRS Document
Technical Communicator/Writer
Traceability Matrix Week Six Project One
School of Information Technology and Mathematical Sciences
Overview :Overview SDLC- Where are we?
Systems Analysis and roles of Systems Analysts
Elaboration of Software Requirements Specification.
What are the goals for a well-defined SRS?
What information should an SRS include?
What is Traceability matrix?
Why Technical Writers be involved in SRS?
SDLC- Systems development Life Cycle :SDLC- Systems development Life Cycle SDLC provides overall framework for managing system development process Understand and Analyse Document all analysis- SRS
Phases of SDLC :Phases of SDLC Project planning: initiate, ensure feasibility, plan schedule, obtain approval for project
Analysis: understand business needs and processing requirements
Design: define solution system based on requirements and analysis decisions
Implementation: construction, testing, user training, and installation of new system
Support: keep system running and improve
SDLC- Why and What to look at? :SDLC- Why and What to look at? All development approaches use a SDLC to manage the project.
Models, techniques, and tools make up a systems development methodology
System development methodologies are based on traditional approach or object-oriented approach
Select an appropriate System development methodology to complete every activity in the SDLC
Use CASE tools to help complete tasks in SDLC.
Variations of SDLC :Variations of SDLC Original SDLC was waterfall approach
Currently most SDLC use iteration across phases including Rapid application development (RAD) to speed up development
Current trends include: spiral model, eXtreme Programming (XP), Unified Process (UP) and Agile Modeling
Systems Analysis :Systems Analysis To understand how “the essence” of business operations can be described (“specifications”)
To understand how these “specifications” are used to design and implement a system
How these “specifications” are used as a communication tool
Moreover,
To create these specifications according to an agreed upon standard
A Systems Analyst understands these and solves business problems
Analyst’s Approach to Problem Solving :Analyst’s Approach to Problem Solving Verify that the benefits of solving the problem outweigh the costs Research and understand the problem Define the requirements for solving the problem Develop a set of possible solutions (alternatives) Define the details of the chosen solution Monitor to make sure that you obtain the desired results Decide which solution is best, and make a recommendation Implement the solution
Required Skills of the Systems Analyst :Required Skills of the Systems Analyst An analyst should have fundamental technology knowledge of:
Computers / peripheral devices (hardware)
Communication networks and connectivity
Database and database management systems (DBMS)
Programming languages (for example: VB.NET or Java)
Operating systems and utilities
The Analyst as a Business Problem Solver :The Analyst as a Business Problem Solver Has computer technology knowledge and programming expertise
Understands business problems
Uses logical methods for solving problems
Has fundamental curiosity
Wants to make things better
Is more of a business problem solver than technical programmer
A Systems Analyst- overall :A Systems Analyst- overall
Analysis Techniques and Models :Analysis Techniques and Models Structured Analysis, modelling languages-
Structure Charts
Data flow modelling
Entity-relationship modelling
Object-oriented Analysis, modelling languages-
Class diagrams
Use case diagrams
Interaction diagrams
State chart diagrams
Activity diagrams
Implementation diagrams
Analysis models- Multimedia and Web-based Projects :Analysis models- Multimedia and Web-based Projects Storyboarding has been adapted by the MM industry as a useful planning technique
Storyboards show how different parts of a multimedia application come together.
Storyboarding is used to “build a story” on paper
it details the message and purpose of a multimedia application.
Elaboration of SRS :Elaboration of SRS Understanding of a client's system requirements and dependencies at a particular point in time (usually) prior to any actual design or development work.
Two-way insurance policy that assures that both the client and the development team understand the other's requirements from that perspective at a given point in time.
Developed during the first stages of Requirements Development. By now, all teams have their Version 1 SRS completed, lets improve our understanding to improve and maintain it……….
Well-defined SRS :Well-defined SRS Provides feedback to the client- natural language, unambiguous manner, includes charts, tables, diagrams, and so on.
Decomposes the problem into component parts- contains organized information, places borders around the problem, solidifies ideas, and helps break down the problem.
Serves as an input to the design specification- serves as the parent document to subsequent documents.
Serves as a product validation check- parent document for testing and validation strategies.
What you need to consider :What you need to consider You are describing to a reasonable level of detail just what your system will and will not do.
Not exactly how it will do it, but every major feature should be described.
Ask yourselves, if your SRS was given to another team to develop the same system,
Would both systems provide the same (IDENTICAL) features to a user?
Should include a clear description of the functionality of your system, including any relevant knowledge from your client's domain that need to be documented.
The 10 language quality characteristics of an SRS – by Donn Le Vie, Jr. :The 10 language quality characteristics of an SRS – by Donn Le Vie, Jr. Complete
Consistent
Accurate
Modifiable
Ranked
Testable
Traceable
Unambiguous
Valid
Verifiable
Technical Communication :Technical Communication “Technical communication” is the process of gathering technical information and presenting it to a targeted audience in a clear, useful, accurate, comprehensive, grammatically correct, and easily understandable form
Technical communication” encompasses the work done by individuals with many different job titles, such as writer, editor, illustrator, programmer or Web designer, because they work in different media as the situation dictates.
Teams need to have high level of Technical Communication established and have a Technical Communicator/Writer within each team.
Technical communicator/Writer :Technical communicator/Writer Technical communicators study their audience and determine the best way to present the information.
Should it be a table or a chart?
An online help file or a Web site?
A book or a brochure?
An illustration or a spreadsheet? A proposal or a specification?
Technical communicators gather knowledge from experts and customers by conducting interviews, testing their topics, and studying existing information.
The technical communicator reshapes this information so that the correct audience can access, understand, and use it.
Traceability Matrix :Traceability Matrix A traceability matrix is created by associating requirements with the work products that satisfy them.
Traceability means that you would like to be able to trace back and forth how and where any work product fulfills the directions of the preceding (source) product. The matrix deals with the where, but the how you have to do yourself comes once you know the where.
e.g. the Requirement of User Friendliness (UF). Since UF is a complex concept, it is not solved by just one design-solution and it is not solved by one line of code. Many partial design-solutions may contribute to this Requirement and many groups of lines of code may contribute to it.
Example of simple Traceability Matrix :Example of simple Traceability Matrix A traceability matrix is a report from the requirements database or repository.
e.g., Tracing S12 to its source makes it clear this requirement is erroneous: it must be eliminated, rewritten, or the traceability corrected.
Where S = System requirement
U = User requirement
Summary :Summary We are at the Analysis phase of SDLC.
Analysis is the understanding of the system specifications.
We act as Analysts to research and understand the problem.
A number of Models are required to express the system specifications.
Technical Communication enhances the quality of information gathering and presentation in a clear and useful form.
Traceability Matrix helps tracing work products with the requirements, and ensures completeness, is used to manage change and provides the basis for test planning.
References :References Satzinger, J. W., Jackson, R. B., & Burd, S. D. (2004). Systems Analysis and Design in a Changing World (3rd ed.). Cambridge, Mass.: Course Technology.
Maciaszek, L. and Liong, B.L. (2005). Practical Software Engineering. Addison Wesley
http://www.techwr-l.com/techwhirl/magazine/writing/softwarerequirementspecs.html
http://www.jiludwig.com/Traceability_Matrix_Structure.html
http://www.stickyminds.com/sitewide.asp?Function=edetail&ObjectType=ART&ObjectId=6051
More :More They were created after
a lot of thinking
a lot of research
a lot of experimentation
a lot of evaluation
and last but not least a lot of evolution