D. Richard Hipp author of SQLite and Fossil SCM.
SQLite is a simple, lightweight, efficient database engine. It works very well in resource constrained environments. Its rigorous approach to testing is inspired by do178.
Fossil SCM is a software configuration management (SCM) tool that bundles an entire project management stack into each repository with http server and versioned wikis, tickets, and code. SQLite itself is managed using Fossil.
SQLite
SQLite does not compete with other databases, it competes with fopen()
The SQLite tech stack consists of: ANSI C and TCL. The database itself is written in C and testing and tooling is largely done in TCL.
SQLite is extensively tested. The testing approach is inspired by do178. Quote from drh on HN:
Correct. The key word is "inspired". Multiple companies have run a DO-178B cert on SQLite, I am told, but the core developers did not get to participate, and I think the result was level-C or -D.
While all that was happening 10+ years ago, I learned about DO-178B. I have a copy of the DO-178B spec within arms reach. And I found that, unlike most other "quality" standards I have encountered, DO-178B is actually useful for improving quality.
I originally developed the TH3 test suite for SQLite with the idea that I could sell it to companies interested in using SQLite in safety-critical applications, and thereby help pay for the open-source side of SQLite. That plan didn't work out as nobody ever bought it. But TH3 and the discipline of 100% MC/DC testing was and continues to be enormously helpful in keeping bugs out of SQLite, and so TH3 and all the other DO-178B-inspired testing and refactoring of SQLite has turned out to be well worth the thousands of hours of effort invested.
The SQLite project is not 100% DO-178B compliant. We have gotten slack on some of the more mundane paperwork aspects. Also, we aggressively optimize the SQLite code base for performance, whereas in a real safety-critical application the focus would be on extreme simplicity at the cost of reduced performance.
However, if some company does call us tomorrow and says that they want to purchase a complete set of DO-178B/C Level-A certification artifacts from us, I think we could deliver that with a few months of focused effort.
To satisfy the DO-178B/C standards SQLite has an interesting approach to storing requirements.
Fossil SCM
Fossil is a simple, high-reliability, distributed SCM. All Fossil data is stored in SQLite. It provides an alternative to git that also decentralizes the features of GitHub.
Unique features:
- Integrated project management tools: Each Fossil repository comes with integrated bug tracking and ticketing, wiki, and forum.
- Build in web interface: Fossil contains a built in HTTP server and web interface
- Operates over HTTP/HTTPS: The Fossil network protocol operates over simple HTTP/HTTPS over standard ports
- Technotes: Special wiki pages associated with a point in time for the project. Can be used to provide detailed documents for releases, announcements, milestones, etc.
Last update on 7E4B17, edited 1 times. 1/1thh