{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

L10 - Software Development Software Development Margot...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
Software Development Outline Build & Source Management Testing Style Standards Summary Software Development Margot Gerritsen Shela Aboud Emmet Caulfield School of Earth Sciences Stanford University January 26, 2010
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Software Development Outline Build & Source Management Testing Style Standards Summary Outline 1 Build & Source Management 2 Testing 3 Style 4 Standards
Background image of page 2
Software Development Outline Build & Source Management Testing Style Standards Summary Build & Execute .so .a ar .h .o cc .h .o cc .h .o cc ... .h .o cc .h cc .a .a ... .so .so ... System/Installed Libraries ld bin ... ... .c .c .c .c .c
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Software Development Outline Build & Source Management Testing Style Standards Summary Build & Source Management .xml .xsl .c XSLT processor .so cc .dat Autotools .m matlab .dat Results repository models transform .c PRNGs .o .so .c .o common .o post model plugins PRNG plugins cc ld ld cc gvrtk Diagram for gvrtk (simple project)
Background image of page 4
Software Development Outline Build & Source Management Testing Style Standards Summary Source Management Store human-written files (source, docs) in a repository Store nothing that can be generated from source Etiquette — don’t “break” the repository Obey content rules (e.g. sources, docs, no bins) Obey check-in rules (vary, e.g. compile/test) Make your sessions “small” — reduces collision frequency/severity Don’t edit tagged revisions
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Software Development Outline Build & Source Management Testing Style Standards Summary Build Management Don’t want to recompile everything for every minor change: Only recompile object files whose source (files) have changed = Need to specify what sources each object file depends on Only relink binaries whose object-files have changed = Need to specify what object-files each binary depends on Usually specify these dependencies manually (e.g. with rules in a Makefile ). After that, let tools do the work, choices include: make — the venerable standard Apache Ant Java -based SCons Python -based GNU Autotools m4 and sh -based suite — quite painful, but a de facto standard.
Background image of page 6
Software Development Outline Build & Source Management Testing Style Standards Summary Testing Black-box — treat system as opaque White-box — treat system as transparent Unit-testing — test “units” (e.g. functions)
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 8
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}