Your SlideShare is downloading. ×
0
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Software engineering for small product companies
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Software engineering for small product companies

581

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
581
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Software Engineering for small Product Companies Raman Kannan
  • 2. What makes ExultSoft Product/Technology Success depends on a good product or new technology People Processes Most important asset of collaborative and concerned with the company completing a project as a whole
  • 3. Process • Must be predictable • Must be repeatable • Must be harmonious • Must be smooth and reliable • Must be adaptible • Must be learnable • Must be simple and documented
  • 4. Optimizing the Process • Auditing, documenting and improving • What SDLC model do you follow? • Do you know which phase consumes maximum effort vs maximum time? • How do you optimize – without some historical statistics how can you leverage Pareto Rule? • Do you track lessons learned after mistakes? What cannot be measured, cannot be improved!
  • 5. Process visibility • Do you involve your customers when appropriate at the earliest time • Do you see your managers to be enablers or bureaucrats? • How do you escalate problems? • How do you leverage each error that is identified? • Process transparency – does management view the same status you do?
  • 6. People • Must be self empowered – Each engineer should be perpetually optimizing -- improving and learning – Do you know what errors do you make when coding? – Do you know your own SWOT • Strengths, Weakness • Opportunities, Threats Everyone can contribute to marketing – brand ambassador, identifying new clients
  • 7. How to know thyself? • Gather minimal statistics – Types of errors you make – How good is your estimate? • Do you estimate the size of the product? • Do you estimate the time it would take? – Time management techniques – Planning – Preparedness These are not to find fault with you but help you improve by yourself.
  • 8. Planning • No one plans to fail! • But most who fail, fail to plan. • Planning is very important. • Everyday you should have a plan • That plan should include a bit of learning, bit of introspection • How can I do better? How can I improve the product or customer experience?
  • 9. Specific things you can do • Record how long you take to correct a defect? – develop a statistics • How many defects do you typically introduce? • What type of defects do you introduce? • Do you document your own engineering? • Do you document your design process? • If you do, can someone review and follow? Again, what cannot be measured cannot be improved.
  • 10. Team • It is not the individual that counts – it is the collective • Do you help others learn new technologies, your product, your effort? • Do you learn from others? • Do you help others excel in what they do? • Do you help others improve by giving them appropriate tips? • Do you hold others accountable when they do not pull their weight? – this is important All the wheels have to run at the same speed!
  • 11. Products • Products includes technology • How good is your product design? – Functionally • Is it useful to a customer or more than one customer • Engineering right product vs engineering product right – Structurally • Is it reliable, easy to maintain and easy to understand • Easy to modify and improve upon • Easy to integrate within an external environment • Architecture is key Software design is hard, but that is the investment. Do not start writing code. Design hard. Review your design. Document your design!
  • 12. Mother of all products • Requirements Document – Duly signed/dated off by customer • This should be agreed upon during the engagement process • Test Plan/Acceptance Document – Duly signed/dated off by customer • This should be agreed upon during the engagement process • Design Document
  • 13. Learning from mistake • Mistakes and tribulations are essential to grow! • Do you accept you have made a mistake? • Failure and mistakes – makes us stronger • People who do nothing make no mistakes • Do you use them to grow? • Making the same mistake more than once is one too many!
  • 14. Product Engineering • Is a multi-faceted, collaborative effort • Small firms depend on good product • Good products are possible with good people, processes • Mind your process/mind the company you keep • C or C++ or Java or .Net – they are incidental to product quality

×