Download presentation
Presentation is loading. Please wait.
Published byEvan Jordan Modified over 9 years ago
1
Managing Software Development Karl Lieberherr
2
Manage a significant program from requirements to implementation We wrote requirements. We wrote several requirement documents that were “good” enough. http://www.ccs.neu.edu/home/lieber/evergr een/specker/sdg-home.htmlhttp://www.ccs.neu.edu/home/lieber/evergr een/specker/sdg-home.html It is hard to get them perfect.
3
Specker Derivative Game (SDG) About buying and selling generative, active participation products based on partial information. Partial information = type T of CSP formula Generates raw material = CSP formula of given type T Active participation = Finish raw material.
4
Other instances buy a course: –raw materials: lectures, projects –active participation: you need to finish them: absorb the material, apply the material. buy a membership in a health club –raw materials: equipment, classes –active participation: use it.
5
What is needed to write good code? Understanding the application domain is important to writing good code. Application domain topics we encountered –solving min-max problems –reductions –maximizing polynomials –minimizing functions –transition systems for solving MAX-CSP
6
Golden nuggets of insight May simplify your program significantly. Are at a conceptual level.
7
Application domain knowledge dozens of relations in type –reduce to two for raw material construction!! symmetric formulas are the worst case
8
Controlling complexity of raw materials Set of relations: R(1,1), R(pos,length): pos of length literals are positive, length >=2. RR= {R(1,1), R(pos,length), length >=2} e.g., RR = (R(1,1),R(0,2),R(1,2),R(2,2), R(0,3), R(2,3)} Lemma: The worst raw material in this class only needs to use RRsimple={R(1,1), R(0,2)}.
9
Proof Let s be an arbitrary RR-formula. We simplify it to a cnf T(S) using: –In clauses containing positive literals, drop all but one. –In clauses containing only negative literals, but more than one, drop all except two. T(s) is in RRsimple and to each assignment I1 of T(s) corresponds an assignment I of s which satisfies at least as many clauses as I1 in T(s).
10
Example of reduction A B C A B !A !B !C A C B !C !A !B !C !D A B C A B !A !B !C A C B !C !A !B !C !D 3:A 2:!A !B 1: B A:1,B:0,C:0 5/6 sat A:1,B:0,C:0 all sat
11
R = 22 a b c a b d a c d b c d ¾ only a b c a b d a c d can satisfy all symmetric apply all 4! = 1*2*3*4= 24 permutations
12
Symmetrized formula 18:a b c 18:a b d 18:a c d 18: b c d
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.